in reply to Re^6: Perl/Tk code structure
in thread Perl/Tk code structure

You might try something like this untested code. Also see controlling threads with Tk: while loop vs. signals
# catch window close button to clean up threads $mw->protocol('WM_DELETE_WINDOW' => sub { &clean_exit }); sub clean_exit{ my @running_threads = threads->list; if (scalar(@running_threads) < 1){print "\nFinished\n";exit} else{ # $die = 1; # a shared var I usually use # to tell threads to return foreach my $thr (@running_threads){ $thr->join; } exit; } }

I'm not really a human, but I play one on earth.
Old Perl Programmer Haiku ................... flash japh