delphi中线程应用之Synchronize
2024-10-16 20:14:24
当一个线程在使用时,如果这个函数使用了Synchronize修钸的话就不允许别一个线程来调用这个函数,它的目的是避免多个子线程同时访问主线程资源。
示例:
procedure TTaskThread.ShowSuccess;
begin
frmMain.Memo1.Lines.Append('操作成功'); //操作主线程资源
end;
procedure TTaskThread.Execute;
begin
synchronize(ShowSuccess); // 线程中执行
end;
当创建了多个线程,并且多个线程都要访问同一资源,,就有可能出现混乱,于是用Synchronize来控制,使同一时间只有一个线程使用那部分资源,Synchronize参数里面的代码就是多线程需要公共的代码!
最新文章
- SQLite3
- redis3.2新增属性protected mode
- 【代码笔记】iOS-手机验证码
- OSPF
- Java 8 Lambda表达式
- Maven实战(六)--- dependencies与dependencyManagement的区别
- Flex基础相关
- AngularJS: 自定义指令与控制器数据交互
- Codeforces 484E Sign on Fence(是持久的段树+二分法)
- Node.js 事件循环机制
- 3D Slicer Hide 3D Cube and Axis Labels Programmatically 使用代码隐藏三维视图中的方框和坐标轴标签
- 基于FPGA的序列检测器10010
- Java中的equals和hashCode方法详解
- 特别篇:Hyper-v群集模拟实战演示
- 2017 ACM/ICPC(西安)赛后总结
- SDWebImage之SDWebImageDownloaderOperation
- 如何创建带有大纲和书签的交互式web报表
- request.POST 和 request.GET
- 微信小程序的json遍历
- java自学入门心得体会 0.1