Comment fonctionne la portée des variables dans une session de POE?
-
21-08-2019 - |
Question
Quelqu'un peut-il expliquer comment fonctionne la portée des variables d'une session POE? Quelle est la bonne façon de passer l'état dans la session, sans affecter d'autres sessions?
Merci Josh
La solution
est pas affecté par détermination de la portée POE.
Vous pouvez utiliser le tas de POE (accessible par $_[HEAP]
) pour transmettre des données autour entre vos différents gestionnaires.
Selon les docs , le tas est distincte entre les sessions par défaut, mais il est possible de passer outre cette façon que les différentes sessions partagent un tas.
sub my_state_handler {
$_[HEAP]{some_data} = 'foo';
$_[KERNEL]->yield('another_handler');
}
sub another_handler {
print $_[HEAP]{some_data}, "\n"; # prints "foo\n"
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow