in reply to related to threads

Maybe it would be better to have a counter that you increment when you start a thread and decrement when that thread stops. Only start a new thread when this number is below 2. This way when one of the 2 threads finishes you can start another one immediately instead of waiting for both threads to stop

In that case the code should look something like:

my $i=0; while (@dirs_to_ftp) { my $dir= shift @dirs_to_ftp; startthread($dir); $i++; if ($i==2) { $i= $i- wait_for_thread_finish(); $i--; } } while($i) { $i= $i- wait_for_thread_finish(); $i--; }
wait_for_thread_finish() should return the number of finished threads, since it might happen that two threads stop simultaneously (depends on your modul/library/thread code). starthread() should only start one thread, not two

Now if your real question was how to find out when a thread has finished, then you didn't provide enough information. We would at least have to know: What is your operation system ?
What modul or library are you using to start the threads ?

Replies are listed 'Best First'.
Re^2: related to threads
by Viki@Stag (Sexton) on Jul 07, 2008 at 12:36 UTC
    Thanks for that jethro, I am using threads module & working on Windows
    http://techdiary-viki.blogspot.com/