精易论坛

标题: zcj多线程 [打印本页]

作者: hushaoyan    时间: 2025-5-23 16:25
标题: zcj多线程
求一份zjc的多线程

作者: 曦月    时间: 2025-5-23 16:54
自用软件上移植出来的

  
子程序名返回值类型公开备 注
_按钮_开始操作_被单击  
超级列表框_工作信息.表项 = {  }
多线程.创建 (&线程执行, , 线程句柄, , , , , , )
子程序名返回值类型公开备 注
线程执行  
变量名类 型静态数组备 注
许可证_线程执行鱼刺类_临界许可 
局_任务数量整数型 
局_线程数量整数型 
局_投递数量整数型 
局_索引数量整数型 
系统_处理事件 ()
局_任务数量 = 到整数 (编辑框_注册数量.内容)
局_线程数量 = 到整数 (编辑框_注册线程.内容)
如果真 (局_任务数量 < 局_线程数量)
局_任务数量 = 局_线程数量
如果真 (线程池.创建 (局_线程数量, 局_线程数量, 1000, , ))
生成日志 (“线程池-创建失败”, #红色 )
强制结束线程 (线程句柄)
返回 ()
生成日志 (“线程池-开始工作...”, )
如果真 (选择框_以成功为主.选中 = )
判断循环首 (局_投递数量 > 局_任务数量)
如果真 (线程池.取_空闲线程数 () < 0)  ' 判断线程是否有空
如果真 (线程池.投递任务 (&工作线程, , ))
' 如果真 (线程池.等待任务动态 (, ))
原子_递增 (局_投递数量)

程序_延时 (1, )
判断循环尾 ()
如果真 (选择框_以成功为主.选中 = )
判断循环首 (局_任务数量 = 集_执行成功)
如果真 (线程池.取_空闲线程数 () ≠ 0)  ' 判断线程是否有空
如果真 (线程池.投递任务 (&主线程, , ))
' 如果真 (线程池.等待任务动态 (, ))
原子_递增 (局_投递数量)

程序_延时 (1, )
判断循环尾 ()
系统_处理事件 ()
生成日志 (“线程池-正在销毁...”, )
判断循环首 (线程池.取_是否空闲 ())  ' 如果不空闲 就说明工作全部执行完毕了可以销毁
如果真 (线程池.取_状态 ()#线程池_未启动 )
跳出循环 ()
程序_延时 (10, )  ' 加个延时 防止CPU占用过高 和防止卡死
判断循环尾 ()
如果真 (线程池.取_状态 ()#线程池_正在工作 )
线程池.销毁 (, , )
判断循环首 (线程池.取_状态 ()#线程池_正在工作 )
程序_延时 (10, )
判断循环尾 ()
生成日志 (“线程池-工作结束”, )
强制结束线程 (线程句柄)


i支持库列表   支持库注释   
iext扩展界面支持库一
EThread多线程支持库


作者: jjj2016888    时间: 2025-5-23 16:57
https://125.confly.eu.org/forum.php?mod ... A%E7%BA%BF%E7%A8%8B
作者: haoren1212    时间: 2025-5-23 17:11
zcj和zjc是啥
作者: xiaoyu1986    时间: 2025-5-23 19:05
https://125.confly.eu.org/search.php?mo ... +%E8%AE%BF%E9%97%AE




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4