多线程定时关闭简单例子

.版本 2 .支持库 EThread .支持库 spec .程序集 窗口程序集_窗口1 .程序集变量 集_许可证, 整数型 .程序集变量 集_许可证_x, 整数型 .程序集变量 集_编号_x, 整数型 .程序集变量 集_信号, 整数型, , , 0 = 继续工作; 1 = 退出 .程序集变量 集_定时值, 整数型, , , 秒 .子程序 _窗口1_创建完毕 集_许可证 = 创建进入许可证 () 集_许可证_x = 创建进入许可证 () .子程序 _窗口1_可否被关闭, 逻辑型 删除进入许可证 (集_许可证) 删除进入许可证 (集_许可证_x) .子程序 任务线程 .局部变量 局_编号, 整数型 进入许可区 (集_许可证_x) 集_编号_x = 集_编号_x + 1 局_编号 = 集_编号_x 退出许可区 (集_许可证_x) .循环判断首 () 调试输出 (“任务线程”, 局_编号, “正在执行任务...”) 进入许可区 (集_许可证) .如果真 (集_信号 = 1) ' //接收到定时关闭信号,退出任务线程 退出许可区 (集_许可证) 调试输出 (“任务线程”, 局_编号, “接收到结束信号,退出任务!”) 跳出循环 () .如果真结束 退出许可区 (集_许可证) 延时 (3000) .循环判断尾 (真) 返回 () .子程序 监控时间 .局部变量 局_当前时间, 日期时间型 .局部变量 局_计时, 整数型 局_当前时间 = 取现行时间 () .循环判断首 () 局_计时 = 取时间间隔 (取现行时间 (), 局_当前时间, #秒) 标签2.标题 = 到文本 (局_计时) .如果真 (局_计时 ≥ 集_定时值) ' //时间 到,发信号关闭任务 进入许可区 (集_许可证) 集_信号 = 1 退出许可区 (集_许可证) 跳出循环 () .如果真结束 延时 (1000) .循环判断尾 (真) 返回 () .子程序 _按钮_开始_被单击 .局部变量 局_线程数量, 整数型 .局部变量 局_句柄, 整数型 集_定时值 = 到整数 (编辑框_定时值.内容) 进入许可区 (集_许可证) 集_信号 = 0 退出许可区 (集_许可证) 进入许可区 (集_许可证_x) 集_编号_x = 0 退出许可区 (集_许可证_x) 局_线程数量 = 10 .计次循环首 (局_线程数量, ) 启动线程 (&任务线程, , 局_句柄) .如果 (0 = 局_句柄) 信息框 (“创建任务线程出错”, 0, , ) 返回 () .否则 CloseHandle (局_句柄) 局_句柄 = 0 .如果结束 .计次循环尾 () 启动线程 (&监控时间, , 局_句柄) .如果 (0 = 局_句柄) 信息框 (“创建监控时间线程出错”, 0, , ) 返回 () .否则 CloseHandle (局_句柄) 局_句柄 = 0 .如果结束 返回 ()
相关文件下载地址
©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注