Я пытаюсь написать постоянный/кэшированный скрипт. Код будет выглядеть примерно так:Написание персистентного скрипта perl
...
Memoize('process_fille');
print process_file($ARGV[0]);
...
sub process_file{
my $filename = shift;
my ($a, $b, $c) = extract_values_from_file($filename);
if (exists $my_hash{$a}{$b}{$c}){
return $my_hash{$a}{$b}{$c};
}
return $default;
}
Какой будет вызываться из сценария оболочки в цикле следующим образом
value=`perl my_script.pl`;
Есть ли способ, я мог бы назвать этот сценарий таким образом, что будет сохранять свое состояние. от вызова к вызову. Предположим, что инициализация «% my_hash» и вызов extract_values_from_file - дорогостоящая операция.
Thanks
IMO зависит от того, как часто используется сценарий. Если он просто запускается время от времени, используйте метод сериализации. Если это больше, чем это, например, он служит какой-то важной, возможно, относительной цели в реальном времени, - делает ее постоянным фоновым сервером/использует IPC. – delicateLatticeworkFever