On Fri, Jun 15, 2007 at 03:07:31PM -0300, Roberto Etcheverry wrote: > I forgot to send you to minimum perl script that exhibits the problem.
> #!/usr/bin/perl > use strict; > use warnings; > > use threads; > use Event; > > sub create_thread { > warn "in create_thread() before async()\n"; > my $thr = async { warn "in thread\n"; }; > warn "in create_thread() before join()\n"; > sleep 2; > $thr->join; > warn "in create_thread() before return\n"; > return; > } > > > my $timer = Event->timer( cb => \&create_thread, after => 2); > > warn "starting event loop\n"; > Event::loop; I don't think you can create a thread inside an event handler because of the way Event abuses perl data structures. What I suggest is to create a thread outside of event and pass messages to the thread using a threadsafe queue or similar. -- Make April 15 just another day, visit http://fairtax.org