Thread Problem mit Threads (6 answers)
Opened by fma at 2014-09-29 16:59

Gast fma
 2014-09-30 14:04
#177617 #177617
Ich verwende Strawberry Perl 5.20.1 unter Windows XP.

Die Reproduzierung habe ich auch schon versucht, bin jedoch bis jetzt gescheitert.

Das einfachste Skrtipt was mit Threads und Tk funktioniert ist folgendes:

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/usr/Bin/perl -w

use strict;
use warnings;

use Threads;

my $thread = threads->create( \&test );
$thread->detach;

use Tk;

# Create the window
my $main = new MainWindow;


my $label2 = $main->Label(
-pady => '1', -relief => 'flat',
-padx => '1', -state => 'normal', -justify => 'center',
-font => [-family => 'Arial',-size => 14, -weight => 'bold',],
-text => 'Status',
)->place( -x => 125, -y => 25);

MainLoop;

sub test{
my @thrs;
for (1..10){

#print "$_\n";
push @thrs, threads->create(\&inside, $_);
}

$_ -> join for @thrs;

print "done2\n";

}

sub inside{

my $i = shift;

my $j = rand(10);

#print "Thread $i..... $j\n";


sleep($j);

#print "Thread $i ready\n";


}


In Vergleich zu meinem Programm mit der sub2 gibt es so gut wie keinen Unterschied. Lediglich wird die GUI unter zuhilfenahme von Variablen erstellt. Daran kann es meiner Meinung nach nicht liegen.

modedit Edited by GwenDragon: Code umgebrochen zwecks Lesbarkeit
Last edited: 2014-09-30 14:15:04 +0200 (CEST)

View full thread Problem mit Threads