use threads; ... sub mythread { ... threads->self->unload("/threadfile.id") if($goaway); ## I'm back. Keep going... } sub laterdaemon { threads->reload("/threadfile.id"); }