У меня есть вопрос о конструкторе для каждого ребенка после форкирования. Например:PSGI - конструктор для каждого дочернего ребенка
warn "INIT : Parent : ".$$;
my $stash;
sub {
unless($stash) {
warn "init : Child : ".$$;
$stash = {
dbh => {}
};
}
return [ 200, ['Content-Type' => 'text/plain'], ['Hello World'] ];
}
Этот код работает, но это плохая практика. Я хотел создать что-то вроде этого
package Myapp;
sub new {
my $class=shift;
my $self=bless {
dbh =>{},
}, $class;
}
sub call {
my ($self, $env) = @_;
# body
return [ 200, ['Content-Type' => 'text/plain'], ['Hello World'] ]; }
я надеюсь, что кого-нибудь объяснить мне, как это может работать на PreFork-сервере, как Starman или Feersum (Но один парень «Одри Тан» скажи мне, что Feersum это не хорошая идея для этого)
так что - спасибо за твои ответы
Ваша цель не совсем ясна. Вы хотите, чтобы ваше приложение было объектом? –
объект - это просто правильный тип кодирования. Но моя цель - найти место, где функция init вызывается один раз и после разветвления –