From: John L. <joh...@gm...> - 2008-11-09 03:58:02
|
Mike, all, > A simple fix is: > > Log::Log4perl->init_and_watch("dllog.conf", 'HUP', > {preinit_callback => \&propagate_hup} ); > sub propagate_hup { > for my $t (threads->list) { $t->kill('HUP'); } > return 1; > } A little too simple upon reflection; I don't know why it didn't chase its tail indefinitely. Better: my $main_tid = threads->tid; sub propagate_hup { if (threads->tid == $main_tid) { for my $t (threads->list) { $t->kill('HUP') unless $t-> == $main_tid; } } return 1; } Regards, John |