AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ein Versuch mit Omnithreadlibrary

Ein Thema von IMPEGA · begonnen am 18. Sep 2020 · letzter Beitrag vom 19. Okt 2020
 
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#12

AW: Ein Versuch mit Omnithreadlibrary

  Alt 22. Sep 2020, 10:40
Ich schreib das einfach mal anders, was ich meinte.

Danke für die Inspiration *demnächst* Videos über die OTL zu machen. Für ein 10 Minuten Video benötige ich ca. 2-3h Produktionszeit (Recherche, Demo bauen, Aufzeichnen, Schneiden, Hochladen, Verwalten). Das mache ich in meiner Freizeit und die ist knapp - Hunde und Ehefrau usw.. Also anderes gesagt, warte nicht auf das Video, weil das kommt frühestens in 4 Wochen, wenn überhaupt.


Inzwischen bin ich Zuhause und hab Zugriff auf dem Laptop, wo ich die Präsentation mit gemacht habe.
D.h. hier ist der Code zu den Folien.

Knackpunkte an deinem Code:
Das inc(fertig) ist nicht Threadsafe.
Weil das eine mehrteilige Operation ist:
1) Wert lesen
2) erhöhen
3) zurückschreiben

Ein anderer Task kann z.B. auch den Wert lesen, während der andere ihn bereits erhöht, aber noch nicht zurück geschrieben hat.

Siehe AtomicIncrement

Auf Liste.Delete(0), liste.count trifft das natürlich auch zu.

Siehe BlockingCollection

Das nächste Problem ist die Interaktion mit der Oberfläche. Das darf nicht mit anderen Threads gemacht werden.
Hier müsstest du mit den HauptThread synchronisieren.
Angehängte Dateien
Dateityp: 7z demo.7z (82,9 KB, 11x aufgerufen)
  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 02:08 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