use warnings; use strict; use Tk; use POE; POE::Session->create ( inline_states => { _start => sub { my ( $kernel, $session, $heap ) = @_[ KERNEL, SESSION, HEAP ]; # # # _start does important stuff... # # $kernel->yield("some_loop"); }, some_loop => sub { $_[KERNEL]->delay("ev_count",10);#to keep session alive }, } ); $poe_kernel->run(); exit 0;