Pergunta

Alguém pode explicar como escopo de variáveis ??funciona dentro de uma sessão POE? O que é a maneira correta de passar estado dentro da sessão, sem afetar outras sessões?

Graças Josh

Foi útil?

Solução

Escopo é afetado por POE.

Você pode usar o montão de POE (acessível através $_[HEAP]) para passar dados ao redor entre seus vários manipuladores.

De acordo com os docs , a pilha é distinta entre as sessões por padrão, mas é possível substituir esse para que as sessões diferentes compartilham um montão.

sub my_state_handler {
    $_[HEAP]{some_data} = 'foo';
    $_[KERNEL]->yield('another_handler');
}

sub another_handler {
    print $_[HEAP]{some_data}, "\n"; # prints "foo\n"
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top