AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 01:32

Parameter dieser Suchanfrage:

Suche in Thema: CriticalSections wie verwenden?
Suche alle Beiträge, die von "Sir Rufo" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 9 von insges. 9 Treffern
Suche benötigte 0.003s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    jepp :thumb: u got it
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Das läuft im HauptThread
    procedure TForm1.Button1Click(Sender: TObject);
    var
    tc:Cardinal;
    begin
    FCS.Enter;
    txt := 'Button1';
    tc := GetTickCount;
    while GetTickCount < (tc + 5000) do Application.ProcessMessages;
    Showmessage(txt);
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Wenn ich Speicherbereich A schützen möchte, dann nehme ich dafür ein CS mit Namen CSA.
    Ich muss nun gewährleisten, dass bei jedem Zugriff auf den Speicherbereich A die CS CSA betreten und danach wieder verlassen wird.

    Das ist erstmal alles.

    Windows ist es egal, wieviele CS ich benutze.

    Jede Instanz von einer Klasse/Thread belegt einen bestimmten Speicherbereich. Erzeuge ich mit der...
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Es muss aber zwingend in einer CS geschrieben/gelesen werden, ansonsten kann es dazu kommen, dass gleichzeitig geschrieben/gelesen wird und dann knallt es

    Es ist egal, ob das von einer lokalen (im Thread verankerten) oder globalen CS geschützt wird. Es muss aber geschützt werden.

    Aber wozu alles schützen, wenn ich genau bestimmen kann, was geschützt werden soll? (Sippenhaft und Singleton...
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Weil die Queue aus einem anderen Thread-Kontext abgefragt wird (Synchronize/Queue)
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Weil jede Thread-Instanz einen eigenen Speicherbereich hat, wo die Werte abgelegt sind.

    Und ich schütze mit der Thread-internen CS den Speicherbereich der Instanz und nicht von allen Instanzen, was zwar möglich ist, aber überflüssig.

    Stell dir vor ein Kühlschrank darf nur immer von einem geöffnet werden, weil sonst geht die Welt unter.

    Bei deiner Methode mit der globalen CS würde das...
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    a. Performance
    b. der Thread selber ist per Definition auch threadsafe für Zugriffe von außen (über die Properties)

    meine Threads übernehme ich in jedes beliebige Projekt und benutze diese ohne mich um irgendeine CS weiter zu kümmern, dann das regelt der Thread ja in sich selber.

    Greift Thread A auf eine Property aus Thread B zu, dann ist die Property von Thread B ja geschützt. Somit kann...
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Hmmm, das sehe ich anders, wenn ich optimal laufenden Code erzeugen will mit der maximal möglichen Performance. Natürlich wird es auch mit einer externen CS funktionieren, aber eben nicht so performant wie es laufen könnte.

    Beispiel:
    GlobalCS : TCriticalSection;

    TMyThread = class( TThread )
    {...}
    Info : Int64;
    end;
  • Forum: Win32/Win64 API (native code)

    AW: CriticalSections wie verwenden?

      Delphi
      by Sir Rufo, 28. Nov 2010
    Um das mit den CriticalSections mal etwas besser zu verdeutlichen habe ich mal mein WorkThread-Beispiel etwas umgeändert um folgende Situationen darzustellen:
    - optimales Laufzeitverhalten mit einem Minimum an Störungen des Threads durch Zugriffe von außen (bzw. durch den Event, der ja in einem anderen Thread-Kontext läuft und somit auch einen Zugriff von außen darstellt)
    - blockierndes...


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=Sir+Rufo&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=156318
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 Uhr.
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