Thread Gibt es für threads Methode done()? (2 answers)
Opened by Gast at 2006-05-23 15:47

murphy
 2006-05-23 22:40
#66543 #66543
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Eine Überprüfung der Liste von Threads klingt nach einer ganz guten Idee.

Ansonsten könnte man sich noch mittels gemeinsamer Variablen eine Benachrichtigung für das Ende eines Threads bauen, also etwa so:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use strict;
use warnings;

use threads;
use threads::shared;

my $done = 0;
share $done;

async {
sleep 10; # tue hier stattdessen etwas sinnvolles
lock $done;
$done = 1;
cond_broadcast $done;
};

sub is_done {
lock $done;
cond_timedwait $done, time;
return $done;
}

while (!is_done) {
print "Laeuft noch...\n";
sleep 1;
}
When C++ is your hammer, every problem looks like your thumb.

View full thread Gibt es für threads Methode done()?