我必须修改和更改一个线程中的一些可视组件,因为你知道这样做是不安全的.
我的问题是如何编写完全线程安全的代码?有可能的?如果是的话那么请你举个简单的例子吗?
我的代码不是线程安全的:
type
tMyWorkerThread = class(TThread)
public
procedure Execute; override;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure tMyWorkerThread.Execute;
begin
//codes
//working with visual components
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
TMyWorkerThread.Create(false);
end;
Run Code Online (Sandbox Code Playgroud)
谢谢.