delphi中线程应用之Synchronize

当一个线程在使用时,如果这个函数使用了Synchronize修钸的话就不允许别一个线程来调用这个函数,它的目的是避免多个子线程同时访问主线程资源。

示例:

procedure TTaskThread.ShowSuccess;

begin

frmMain.Memo1.Lines.Append('操作成功'); //操作主线程资源

end;

procedure TTaskThread.Execute;

begin

synchronize(ShowSuccess); // 线程中执行

end;

当创建了多个线程,并且多个线程都要访问同一资源,,就有可能出现混乱,于是用Synchronize来控制,使同一时间只有一个线程使用那部分资源,Synchronize参数里面的代码就是多线程需要公共的代码!