Ich habe leider bei der Verwendung eines Threads in meiner Klasse ein Absturtzproblem, der Compiler meldet weder Warnings noch Fehler. Hier ein Codestück:
Delphi-Quellcode:
type
TXxxxxxx = class
private
//...
bActive_ : Boolean;
public
//...
constructor Create;
procedure WorkThread();
property bActive : Boolean read bActive_ write bActive_ ;
end;
implementation
constructor TXxxxxxx.Create;
var
ThreadID : Cardinal;
begin
//...
CreateThread(nil, 0, @TXxxxxxx.WorkThread, nil, 0, ThreadID);
end;
procedure TXxxxxxx.WorkThread;
begin
while true do
begin
MessageBox(0,'1','',MB_OK);
if bActive_ then begin end;
MessageBox(0,'2','',MB_OK);
end;
end;
end.
Die erste MessageBox erscheint, dann crasht das Programm. Ich gehe davon aus, dass es ein Problem ist, vom Thread aus auf class member zuzugreifen, was ich jedoch nicht ganz verstehe, da der Thread selbst eine Methode dieser Klasse ist. Ich arbeite mit Delphi7. Wenn mir hier jemand weiter helfen könnte, wäre ich euch sehr verbunden, Danke! (-;
MfG Mega