Registriert seit: 14. Okt 2008
143 Beiträge
Delphi 7 Personal
|
AW: Frage zu XE7 Threadpool
19. Mai 2015, 23:19
@Sir Rufo
Ich kenne den .Net Backgroundworker und denke er wäre in meinem Falle nicht angebracht. Auch finde ich die Threadlimetierung von TThreadpool praktisch.
Da es sich bei meinen Thread um Network IO Threads handelt und zu viele gleichzeitig laufende zu Problemen führen. In meinem konkreten Fall habe ich maximal 32 Threads gleichzeitig am laufen, meistens jedoch nur so ca. 8-10. Wenn ich auf 6 limitiere läuft alles gut. Klar könnte ich das alles auch mit if's und while schleifen lösen, aber eben genau das will ich nicht, weil ich solche konstruckte unschön finde. Die Threads oder auch Tasks im Threadpool zu queuen ist da schon die optimalste Lösung denk ich. Läuft ja auch schon alles so wie es soll. Ich suche nur nach ner Möglichkeit die laufenden Threads
zu suspenden und Threadpool zu sagen und unterbrich die Abarbeitung der Queue. Später möchte ich das ganze natürlich auch resumen können. darum gehts mir. Ich muss also von außen an die Thread/taskobjecte rann. Falls das mit Threadpool nich gehen sollte fänd ich das ganze Ding etwas sinnlos. Klar könnte ich threads erzeugen und mir die handles in ne liste ballern dann ginge das. ich habe aber im inet gelesen das das angeblich mit Threadpool so einfach gehn soll da dieses einen threadsafe locking Liste bieten soll.
mfg newbe
|