Threading/Threadsicher???
Wie einige von euch vielleicht wissen habe ich hier meine SQX Komponente gepostet. Ich möchte nun die Operationen gethreaded ausführen. Dazu verwende ich die JVCL Thread Komponente und führe z.B die kompression durch diesen Thread (OnExecute) aus. Das Problem dabei ist dass z.B ein tLabel nicht sicher ist, d.h es kann ein Fehler (Leinwand erlaubt kein zeichen oder so) auftritt. Wie kann dass nun verhindern, also wie kann ich threadsicher arbeiten?
|
Re: Threading/Threadsicher???
Zugriff auf VCL-Komponenten in Methoden auslagern, welche du mit Synchronize() aufrufst.
Zitat:
|
Re: Threading/Threadsicher???
Danke! Kann ich mit Thread.suspend und Thread.resume den Thread pausieren und fortsetzen?
|
Re: Threading/Threadsicher???
Zitat:
|
Re: Threading/Threadsicher???
Wie kann ich denn feststellen wann der Thread fertig ist?
|
Re: Threading/Threadsicher???
Zitat:
|
Re: Threading/Threadsicher???
TThread bringt ein Ereignis OnTerminate mit. Wenn du dort nur den vom Thread belegten Speicher freigeben willst, kannst du aber auch einfach die FreeOnTerminate-Eigenschaft des Threads verwenden (dann aber den Thread "suspended" erstellen, bevor du die Eigenschaft setzt, oder stattdessen gleich im Constructor FreeOnTerminate setzen).
|
Re: Threading/Threadsicher???
danke, OnTerminate habe ich ja glatt übersehen! Das mit suspend und resume schein zu klappen!!!
|
Re: Threading/Threadsicher???
Während die Funtkion getreaded ausgeführt wird ein vom Benutzer ein String abgefragt. Der Thread soll nur fortfahren wenn die Benuzer eingabe getätigt wurde oder abgebrochen wurde. Wie kann ich aus dieser funktion heraus eine funktion (nicht getreaded) ausfuhren und danach den Thread fortsetzen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:02 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