Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Objekt in Thread und Mainthread verwenden (https://www.delphipraxis.net/149889-objekt-thread-und-mainthread-verwenden.html)

Neutral General 2. Apr 2010 13:00

Re: Objekt in Thread und Mainthread verwenden
 
Hallo,

Ich hätte dann noch eine Frage..

Kann ich CriticalSections lokal definieren? d.h. :

Delphi-Quellcode:
procedure Dummy;
var cs: TCriticalSection;
begin
  cs := TCriticalSection.Create;
  try
    Cmd1;
    cs.Enter;
    try
      Cmd2;
      Cmd3;
    finally
      cs.Leave;
    end;
  finally
    cs.Free;
  end;
end;

//Thread1
procedure Thread1;
begin
  while true do Dummy;
end;

//Thread2
procedure Thread2;
begin
  while true do Dummy;
end;
Würde das gehn?

wicht 2. Apr 2010 14:45

Re: Objekt in Thread und Mainthread verwenden
 
Man kann sie lokal definieren, aber in dem Beispiel macht das keinen Sinn.
Alle Threads müssen die selbe Instanz der Critical-Section zum sperren benutzen.

Tryer 2. Apr 2010 18:03

Re: Objekt in Thread und Mainthread verwenden
 
Erstelle die CriticaSection im Create des Threads und bau zwei public-Methoden "Lock" und "Unlock" ein. Darüber können andere Threads dann die CS bedienen.

Grüsse, Dirk


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:30 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz