AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi TThread.Syncronize und critical section
Thema durchsuchen
Ansicht
Themen-Optionen

TThread.Syncronize und critical section

Ein Thema von Arnulf · begonnen am 23. Feb 2007 · letzter Beitrag vom 26. Feb 2007
 
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: TThread.Syncronize und critical section

  Alt 23. Feb 2007, 13:32
Zitat von Arnulf:
1. Sobald ich syncronize (fillListenFeld) aufrufe wird der zugriff des mainthreads gesperrt ( syncronisiert )
und ich kann auf den listenobjekten oder labels des mainthreads herumfurwerken.
es ist dabei nicht mehr notwendig criticalsection zu benutzen?????
Criticalsections werden hier nicht benötigt.
Zitat von Arnulf:
2. wenn ich eine aus der syncronized procedure eine andere Funktion aufrufe wird diese
ebenfalls syncronisiert aufgerufen?????
Ja.
Zitat von Arnulf:
3. critical section muss ich in syncronized methoden nicht aufrufen nehme ich an ???
critical section dient nur zu dirrekten mannipulation von variablen oder eben kurz mal was auslesen ??
[TThread].Synchronize funktioniert so:
der Thread schickt dem Hauptthread eine Windows-Botschaft (Message).
In der Botschaft ist ein Methodenzeiger (also Adresse des Threadobjekts + Adresse der Procedure) enthalten.
Der Hauptthread arbeitet ständig seine Messagequeue ab, bis er auf diese Botschaft tritt.
Die Procedure, die Synchronize übergeben wurde wird nun im Kontext des Hauptthreads ausgeführt;
das ist der ganze Trick.
Andreas
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz