Threading
achim
- perl
0 Cruz0 achim0 n.d. parker0 achim
0 Calocybe0 achim0 Calocybe0 n.d. parker0 Calocybe
hallo,
hab ein skript geschrieben, das die Thread-Module benutzen soll.
(use Thread;)
die Codezeile:
$Config{usethreads} or die "In dieser Perl-Version ($]) ist Treading nicht moeglich.\n";
liefert folgende Ausgabe:
In dieser Perl-Version (5.006) ist Threading nicht moeglich.
Ich dachte Threading sei ab der Version 5.005 möglich?
gruss Achim
Hi Achim,
das bedeutet noch nicht unbedingt, daß threading icht möglich ist.
Es bedeutet lediglich, daß $Config{usethreads} nicht definiert oder irgendwie false ist.
Vielleicht wird es ja mit einem kleinem c geschrieben, oder printe doch einfach mal $config{usethreads} und mal sehen was über drin steht.
Ciao
Cruz
hallo,
hab ein skript geschrieben, das die Thread-Module benutzen soll.
(use Thread;)
die Codezeile:
$Config{usethreads} or die "In dieser Perl-Version ($]) ist Treading nicht moeglich.\n";
liefert folgende Ausgabe:
In dieser Perl-Version (5.006) ist Threading nicht moeglich.
Ich dachte Threading sei ab der Version 5.005 möglich?
gruss Achim
hallo cruz,
Hi Achim,
das bedeutet noch nicht unbedingt, daß threading icht möglich ist.
Es bedeutet lediglich, daß $Config{usethreads} nicht definiert oder irgendwie false ist.
Vielleicht wird es ja mit einem kleinem c geschrieben, oder printe doch einfach mal $config{usethreads} und mal sehen was über drin steht.
print $Config{usethreads}; bringt folgende Ausgabe:
Use of uninitialized value in print at ... (liegt wahrscheinlich an use strict; - oder?)
und dann in der zeile, wo ich meinen Thread erzeuge:
(my $thr_write = new Thread &write;)
No threads in this perl at ...
Ciao
Cruz
thanks schon mal
achim
Moin,
print $Config{usethreads}; bringt folgende Ausgabe:
Use of uninitialized value in print at ... (liegt wahrscheinlich an use strict; - oder?)
aeh, du hast schon das Modul 'Config' eingebunden?
Viele Gruesse,
n.d.p.
Moin,
print $Config{usethreads}; bringt folgende Ausgabe:
Use of uninitialized value in print at ... (liegt wahrscheinlich an use strict; - oder?)
aeh, du hast schon das Modul 'Config' eingebunden?
Viele Gruesse,
n.d.p.
das hab ich ... danke.
Hi!
Ich dachte Threading sei ab der Version 5.005 möglich?
Das kommt nicht nur auf die Version an, sondern auch darauf, ob Dein Perl mit Thread-Support kompiliert wurde. Siehe
perldoc perlthrtut Abschnitt Basic Thread Support.
So long
hallo,
Das kommt nicht nur auf die Version an, sondern auch darauf, ob Dein Perl mit Thread-Support kompiliert wurde. Siehe
und ich dachte eben, dass active perl 5.6 mit threads kompiliert ist.
hab inzwischen mitgekriegt, dass dem nicht so ist.
trotzdem danke.
achim
Hi nochmal!
und ich dachte eben, dass active perl 5.6 mit threads kompiliert ist.
hab inzwischen mitgekriegt, dass dem nicht so ist.
Aeh... in der Aussage ist keine Logik. *g* Also das geht so: Perl liegt ja primaer erstmal als SourceCode (in C geschrieben) vor, es ist ein Open-Source-Projekt. Nun wird aus diesem SourceCode durch Compilieren und Linken (insgesamt nennt man das dann build) ein ausfuehrbares Programm erzeugt. (Fuer jede Plattform muss dies separat durchgefuehrt werden.) Dabei koennen - grob gesagt - Optionen angegeben werden, unter anderem auch, ob das Threading unterstuetzt werden soll. (Es mag Plattformen geben, auf denen das vom Betriebssystem unzulaenglich unterstuetzt wird, deshalb will man das evtl. ausschalten. Ausserdem hatte Threading zumindest in 5.005 noch Beta-Status.) Welche Optionen gesetzt wurden, genau das kannst Du spaeter in %Config nachlesen.
Diese Compilierung kann aber natuerlich nicht nur einmal fuer eine Perl-Version durchgefuehrt werden. Es gibt z.B. bei Perl genauso wie bei Linux verschiedene Distributoren (allerdings kenne ich nur ActiveState), jeder von denen baut seine eigene Executable. Man koennte also sicherlich sagen, ActiveState's Build von Perl 5.6 hat Threading support einkompiliert (wenn sie das denn haben - weiss ich nicht), aber allgemein fuer die Version 5.6 von Perl ist diese Aussage nicht sinnvoll.
Jetzt endgueltig verwirrt? - Gut. ;-)
So long
Moin Calo,
und ich dachte eben, dass active perl 5.6 mit threads kompiliert ist.
hab inzwischen mitgekriegt, dass dem nicht so ist.
[...] Man koennte also sicherlich sagen, ActiveState's Build von Perl 5.6 hat Threading support einkompiliert (wenn sie das denn haben - weiss ich nicht),
ja, koennte man ;)
aber allgemein fuer die Version 5.6 von Perl ist diese Aussage nicht sinnvoll.
jup, stimmt.
Viele Gruesse,
n.d.p.
Tach n.d.
[...] Man koennte also sicherlich sagen, ActiveState's Build von Perl 5.6 hat Threading support einkompiliert (wenn sie das denn haben - weiss ich nicht),
ja, koennte man ;)
Willst Du damit andeuten, sie haben es nicht? *g*