Registriert seit: 3. Apr 2007
Ort: Zürich
534 Beiträge
Delphi 11 Alexandria
|
AW: Showmessage oder auch Form.showmodal verschwindet manchmal hinter Form
2. Jul 2012, 16:05
Welche tolle Möglichkeit hat man denn unter XE2 eine beliebige Routine in einem eigenen Thread laufen zu lassen?
Vor allem, wenn man trotzdem synchronisiert z.B. showmessage nutzen muss?
z.b. anonyme Prozeduren in anonymen Threads
Delphi-Quellcode:
procedure MySynchProcedure(Param1: String; Param2: TObject; Param3: TDictionary<Integer, TMyObject>);
begin
TThread.Queue(Nil,
procedure
begin
// do anything synchronized here
end);
end;
procedure DoAnythingTimeConsuming;
var
Thrd: TThread;
begin
Thrd: TThread.CreateAnonymousThread(
procedure
begin
// do anything time consuming stuff here
sleep(100000);
MySynchProcedure(Param1, Param2, Param3);
end);
Thrd.FreeOnTerminate:= True;
Thrd.Start;
end;
Die obige Aussage repräsentiert meine persönliche Meinung.
Diese erhebt keinen Anspruch auf Objektivität oder Richtigkeit.
Geändert von taveuni ( 2. Jul 2012 um 16:08 Uhr)
|