die/END blocks and AE::MP

Marc Lehmann schmorp at schmorp.de
Wed Jul 14 20:19:27 CEST 2010


On Wed, Jul 14, 2010 at 09:30:45AM -0700, gleeco <gleeco at gmail.com> wrote:
> It's when my code modifies SIG handler in conjunction with and END block

Yeah, don't do that, obviously?

>   Can't call method "unmonitor" on an undefined value at
> /opt/....lib/site_perl/5.8.8/AnyEvent/MP.pm line 625 during global
> destruction
> 
> fwiw, i can't readily be on > 5.8.8 perl and this is AE::MP::VERSION = 1.29

This is normal perl behaviour - you interrupt it at any place and the
state is not consistent. Use a signal watcher to get defined behaviour.

> Not really a show-stopper, but if you have thoughts about making the
> error go away --including coder rehabilitation programs --bring it.

If you rally want to do it the dirty way, call _exit and avoid the cleanup
phase (this is kind of like kill -9).

-- 
                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schmorp at schmorp.de
      -=====/_/_//_/\_,_/ /_/\_\



More information about the anyevent mailing list