/ / Ako definovať na manipulačnom programe pre spawn pre Mojo :: Server :: Prefork? - perl, mojolicious, hypnotoad

Ako definovať na handhelovom spustení pre Mojo :: Server :: Prefork? perl, mojolicious, hypnotoad

Mám jednoduchú webovú aplikáciu napísanú v Perl / Mojolicious a bežím pod hypnotoad.

Potrebujem definovať nejaký obslužný program pre udalosť "spawn" (vydaný Mojo :: Server :: Prefork).

Ale neviem, ako vložiť túto definíciu handeru do kódu metódy spustenia aplikácie Mojolicious. $self->on("spawn"=>sub {}) nefunguje :( A Dumper($self) nebolo vôbec užitočné: neexistujú žiadne $ self-> server alebo $ server-> prefork ...

Povedzte mi, prosím, ako na to.

Vďaka!

odpovede:

0 pre odpoveď č. 1

Aj keď stále neviem, ako definovať obslužný program spustený na procese „spawn“, môžem povedať, že úplne to isté sa dá urobiť použitím

Mojo::IOLoop->singleton->next_tick(sub {
doingSomethingOnProcSpawn()
});

Ako je opísané v Mojolicious Cookbook (http://mojolicious.org/perldoc/Mojolicious/Guides/Cookbook#Pre-forking):

Počas spustenia je vaša aplikácia predinštalovaná vmanažérsky proces, ktorý nespúšťa slučku udalostí, takže môžete použiť "next_tick" v Mojo :: IOLoop na spustenie kódu vždy, keď bol rozdvojený nový pracovný proces a jeho slučka udalostí sa spustí.

Tip: Ako vidím vo svojej skutočnej aplikácii, Mojo :: IOLoop-> singleton-> next_tick a Mojo :: IOLoop-> next_tick fungujú úplne identicky, takže neviem, aký je medzi nimi rozdiel.