connect() verkürzen
-
Theuseus schrieb:
Und dann einfach immer schaun ob die Var =STILL_ACTIVE is oda?
jo, aber besser ist:
if (WAIT_OBJECT_0 == WaitForSingleObject (dein_threadhandle, 10)) { // der thread wurde beendet. }dann haste auch gleich ein kleines delay drin und entziehst deinem windoofs nicht soviele cpu-zyklen...
:xmas2:
-
WaitForSingleObject(dein_threadhandle, INFINITE);
-
--------- schrieb:
WaitForSingleObject(dein_threadhandle, INFINITE);..ich dachte er will nur mal sporadisch nachschauen, ob der thread noch läuft. oder nicht?
-
Hi,
danke für eure Hilfe!
Ja ich will in einer Schleife immer überprüfen ob der Thread noch läuft.
mfg
-
Quote:
jo, aber besser ist:
Code:
if (WAIT_OBJECT_0 == WaitForSingleObject (dein_threadhandle, 10))
{
// der thread wurde beendet.Kannst du mir das erklären?
Check ich ned ganz.
und:von welchem Typ ist WAIT_OBJECT_0? und was is die 10?Thx
-
K hab diese Antworten im MSDN gefunden.
Nur noch eins:
Bezieht sich das "Object" im Funktionsnamen auf den Thread?
Lg
-
Kannst du mir den Schnipsel trotzdem genauer erläutern?
Mfg
-
K gecheckt, vielen Dank!
-
-
ten schrieb:
--------- schrieb:
WaitForSingleObject(dein_threadhandle, INFINITE);..ich dachte er will nur mal sporadisch nachschauen, ob der thread noch läuft. oder nicht?
Dann sollte er als Time-Out Wert gleich 0 verwenden.
-
Vielen Dank für eure Hilfe!
ich hab nur noch eine letzte Frage:
ich bekomm beim compilieren folgende Fehlermeldung:
I:\Programme\PellesC\Projects\check\check.c(77): warning #2215: Conversion from 'int' to 'unsigned short int'; possible loss of data.
bei dieser Zeile:
unsigned short int p=80;
Adress.sin_family=AF_INET;
Adress.sin_port=htons(p);Wisst ihr was ich da falsch gemacht habe?
Lg
-
Lass das int weg
.
-
Hmm funzt leider auch ned...gg
Ah und ich hab noch ein Problem lol:
Wenn ich ne Funktion (mit Schleife) in einem Thread starte, muss ich dann zb die Zählervariable an den Thread übergeben??
Ich frage weil ich ne Schleife hatte mit einer Variable die IN der Funktion deklariert wurde.
Trotzdem wurde der Testdialog statt 3 mal unendlich mal ausgegeben und es ist bestimmt kein SchleifenFehler.
MFG
-
Theseus schrieb:
I:\Programme\PellesC\Projects\check\check.c(77): warning #2215: Conversion from 'int' to 'unsigned short int'; possible loss of data.
bei dieser Zeile:
unsigned short int p=80;
eine selten dämliche meldung... wass'n das für'n unfähiger compiler?
wenn's warning wech soll: unsigned short p=(unsigned short)80;
:xmas2:
-
Nein, nütz leider auch nix lol.-
hmm zum Compiler: Pelles C und Warnstufe 2
-
Theseus schrieb:
Pelles C ...
...scheint buggy zu sein.
oder ist das warning vielleicht doch in einer anderen zeile?
:xmas2:
-
Also das mit der Warnung liegt am Compiler.
Theseus schrieb:
Wenn ich ne Funktion (mit Schleife) in einem Thread starte, muss ich dann zb die Zählervariable an den Thread übergeben??
Ich frage weil ich ne Schleife hatte mit einer Variable die IN der Funktion deklariert wurde.
Trotzdem wurde der Testdialog statt 3 mal unendlich mal ausgegeben und es ist bestimmt kein SchleifenFehler.
Ähm, das hängt alles von der Verwendung ab, wieso musst Du die Zählervariable dem Thread übergeben ?
Mit Variablen und Threads ist aber generell Vorsicht geboten, siehe
Thread Local Variables & Thread-Local-Storage (TLS).
-
Nein, ist diese Zeile.
-
Ah zu spät, Vorpost ging noch an Ten.
-
Hi ich bins nochmal:
hmmm wie kann ich mehrere Parameter übergeben? (bei CreateThread)
Einfach Beistrich?
Lg
