Thread Management
-
au mann mach bloss keine satzzeichen du nen thread beenden über id geht nicht aber du kannst dir über die id ein handle besorgen und mit dem handle kannste den thread dann zumachen das handle bekommste aber gleich von createthread also wieso so kompliziert
-
hahaha lol husti

Über
HANDLE WINAPI CreateThread( __in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes, __in SIZE_T dwStackSize, __in LPTHREAD_START_ROUTINE lpStartAddress, __in_opt LPVOID lpParameter, __in DWORD dwCreationFlags, __out_opt LPDWORD lpThreadId );gibt es genügend Threads im Unterforum "WinApi": http://www.c-plusplus.net/forum/f4
oder du schaust hier: http://msdn.microsoft.com/en-us/library/ms682453(v=vs.85).aspx
grüüüße
-
spike1993 schrieb:
Suche ne Klasse oder funktionen die es mir erlauben ein thread zu starten und ihm eine id (int) zuweisen überder die es dann wieder beendet werden kann.
lern erst mal google bedienen, vor du mit threads arbeitest.

-
find aber nix über google wie ich ein thread ohne handle nur mit der lpThreadId killen kann, oder mithilfe der lpThreadId alle handels durchsuchen.
-
-
ja schon klar das erstellen des threads ist ja kein problem nur das beenden per dwThreadId
-
@spike1993:
Die Art wie du hier auftrittst, damit wirst du dir keine Freunde machen.
"Ja, schon klar" schreiben, aber die verlinkte Seite nichtmal gelesen haben. Oh Mann...
Und auch bloss nichts selbst versuchen, könnte ja 5 Min. deiner kostbaren Zeit verschwenden.
-
@hustbaer:
Die Art wie du hier auftrittst, damit wirst du dir keine Freunde machen.
-
Sehr geehrte Miss GPunkt,
meines Erachtens nach, wurde nur darauf hingewisen, dass die Frage des Threadopeners bereits beantwortet worden ist.
Wenn der Herr Threadopener aber stets bemüht ist jeden Hinweis darauf gleich abzutun, endet dies doch so oft in Missmut und
Entäuschung so mancher unentgeldlicher hier registrierter helferlein.Mit freundlichen Grüßen

-
eine frage hab ich noch, wenn ich ein thread starte (MainThread) und aus dem heraus viele andere Threads Starte und dann das MainThread mit terminatethreat beende, beenden sich dann auch gleichzeitig die threads die ich aus dem MainThread heraus gestartet hab?
-
Ja.
-
Nein.
-
Ja.
-
Da bin ich mal auf die Antwort von hustbaer gespannt. Der kennt sich damit aus!
-
Wenn der Main-Thread endet, enden alle Threads.
-
lies mal hier: http://www.c-plusplus.net/forum/p1741170
Es gibt aber auch Prozesse ohnen primären Thread... bzw. der primäre Thread hat sich schon längst wieder beendet...
-
spike1993 schrieb:
ja schon klar das erstellen des threads ist ja kein problem nur das beenden per dwThreadId
Das ist klar dass das ein Problem ist. Threads beendet man ja auch nicht "per dwThreadId". Ein Thread beendet wenn die ThreadProc returned.
-
314159265358979 schrieb:
Wenn der Main-Thread endet, enden alle Threads.
Das ist eine Designfrage des Betriebssystems. Unter Windows z.B. endet ein Prozess erst wenn der letzte Thread des Prozesses endet.
-
Naja,..
so ganz stimmt diese aussage nicht. Der prozess ist unter windows beendet,
wenn der letzte mit diesem Prozess assoziierte Thread beendet ist.Du kannst ja auch einen Thread erstellen, und das letzte Handle von diesem
schließen. der Thread ist dann nicht mehr mit diesem Prozess assoziiert, läuft
aber noch!
-
dot schrieb:
314159265358979 schrieb:
Wenn der Main-Thread endet, enden alle Threads.
Das ist eine Designfrage des Betriebssystems. Unter Windows z.B. endet ein Prozess erst wenn der letzte Thread des Prozesses endet.
Nein. Unter Windows ist das genau nicht so.