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

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
log4perl-devel mailing list
log4perl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/log4perl-devel

Reply via email to