類TThread 方法 WaitFor , 其作用是: 當一個線程必須要等其它線程或進程完成某些任務時 , 可以使用 WaitFor 將線程臨時 Suspend.

1. 等待一個線程完成:

if ListFillingThread.WaitFor then
begin
  with ThreadList1.LockList do
  begin
    for I := 0 to Count - 1 do
      ProcessItem(Items[I]);
  end;
  ThreadList1.UnlockList;
end;

2. 等待一個任務完成:

Event1.ResetEvent; // 清除所有Event;

for i := 1 to Counter do
  TaskThread.Create(False); { create and launch task threads }
if Event1.WaitFor(20000) <> wrSignaled then
  raise Exception;
// 所有任務線程已經完成, 回到主線程.

多線程之WaitFor相关推荐

  1. java sleep join_Java多線程之sleep,wait,join和yield關鍵字

    在java或者android中,使用Thread和Runnable就可以玩多線程了,這個成本比較低,也沒什么好說的,今天主要是針對多線程中主要的關鍵字wait,sleep,join和yield做個筆記 ...

  2. java 原子性加法_Java多線程之原子性 volatile、atomicInteger測試

    一.補充概念 1.什么是線程安全性? <Java Concurrency in Practice>中有提到:當多個線程訪問某個類時,這個類始終都能表現出正確的行為,那么就稱這個類是線程安全 ...

  3. java suspend() 和 resume(),java多線程之(suspend()、resume())

    suspend()和resume()方法,從字面意義上可以了解到這兩個方法是一對的,suspend()方法就是將一個線程掛起(暫停),resume()方法就是將一個掛起線程復活繼續執行.參照例子: p ...

  4. 多線程之 CreateThread

    CreateThread 是 Win32 API 函數. 其定義如下: function CreateThread(   lpThreadAttributes: Pointer;           ...

  5. java方法中 thread,Java中的線程Thread方法之---join()

    上一篇我們說到了Thread中的stop方法,這一篇我們再來看一下方法join的使用,那么方法Join是干啥用的? 簡單回答,同步,如何同步? 怎么實現的? 下面將逐個回答. join方法從字面上的意 ...

  6. Java進階:ExecutorService 線程池

    Java 進階:ExecutorService 線程池 文章目錄 Java 進階:ExecutorService 線程池 簡介 參考 正文 Thread 野線程 繼承 Thread 實現 Runnab ...

  7. RTP/RTCP流媒體服務器技術研究

    來源:http://www.sharp-i.net/big5/articles/article/26.htm 隨著互聯網的飛速發展,流媒體技術的應用越來越廣泛,從網上廣播.電影播放到遠程教學以及在線的 ...

  8. c语言多线程编程随机数,在c 中使用线程安全的随机数,多线程_c_开发99编程知识库...

    我一直試圖通過檢查,並且傳遞 2億個隨機數,並在線程之間劃分它們. 一旦達到 1億個隨機數我一直得到一個錯誤. 我在哪裡分配錯誤或者我做錯了什麼?struct thread { long long i ...

  9. 從turtle海龜動畫學習Python-高中彈性課程1

    Goal: 藉由有趣的「海龜動畫繪圖」學會基礎的 Python 程式設計 本篇介紹本彈性課程之開設由來, 以及一些供後續查閱之Python 之細節, 方便後面再回頭交叉索引之內容, 文獻等 " ...

最新文章

  1. 联邦学习应用思考:需求还是方法?
  2. $Django 中间件 csrf
  3. VMware vSphere 5.1 群集深入解析(二十六)- 数据存储维护模式汇总
  4. 云计算机教室怎么布线,云和县实验小学计算机教室综合布线及计算机安装预算方案.doc...
  5. Django基础三之视图函数
  6. python的装饰器迭代器与生成器_详解python中的生成器、迭代器、闭包、装饰器
  7. 第2章 数据可视化基础
  8. Java8中的 Stream 那么彪悍,你知道它的原理是什么吗?
  9. Java基础梳理(一)
  10. 2016计算机二级c语言题库,计算机二级c语言题库2016精选
  11. Delphi XE实现FTP上传下载文件
  12. 七号信令:信令网基本概念
  13. eclipse导入wsdl文件_eclipse生成wsdl文件
  14. 单片机的多路温度采集系统
  15. opencv安装教程
  16. 像素是计算机图像处理的最小单元,图像处理复习
  17. java组件叠加显示,如何让上层的组件一直在上层显示
  18. Jsp程序设计-数据库练习题(二)
  19. bat 脚本修改IE浏览器代理服务器
  20. 解决Notepad++ Plugin Manager无法加载插件的方法no new plugins available

热门文章

  1. EFCore的外键级联删除导致的【可能会导致循环或多重级联路径】
  2. B_随笔_关于网站记录(2)
  3. 使用报表工具自定义属于自己的报表
  4. 神经网络笔记1-三层BP神经网络
  5. XamlParseException异常
  6. 脑机接口002 | 上海与长三角地区脑科学发展与跨学科合作
  7. 计算机病毒与蠕虫的特点比较,蠕虫病毒的特点是什么
  8. JWeb新闻的增删改查
  9. 中国移动支付全球领先!成中国“新四大发明“
  10. 最早的计算机就是智慧的中国人发明的什么,美国人:这个人类使用了百年的科技,中国人居然说是他们发明的?...