005
17.01.2008, 10:47 Uhr
ao
(Operator)
|
Zitat von stephanw: |
Warum muss Mutex überhaupt wissen, welcher Thread seine Methoden verwendet ?
|
Mutexe sind häufig so implementiert, dass ein Thread, der den Mutex bereits besetzt hat, ihn auch ein weiteres Mal besetzen darf. Mutex heißt gegenseitiger Ausschluss - wenn derselbe Thread den Mutex zweimal belegen will, gibts keinen Grund, ihn beim zweiten Mal auszuschließen. Das kann die Implementierung der Applikation stark vereinfachen.
Um das zu realisieren, braucht man aber in der Tat nur eine eindeutige Identifizierung für den Thread und nicht das Thread-Objekt selber. Aber selbst wenn - das Betriebssystem kann in der Regel auch das Thread-Handle ermitteln. Und darüber sollte man an sein Thread-Objekt herankommen - das sollte man immer in seine Thread-Verwaltung einbauen.
ao |