|
.版本 2
.支持库 EThread
.子程序 多线程_结束
.参数 主序号, 整数型
.如果真 (主序号 ≤ 0 或 主序号 > MaxHwnd)
返回 ()
.如果真结束
.如果真 (线程信息 [主序号].线程句柄 = 0)
返回 ()
.如果真结束
__内部结束 (主序号)
多线程_复位 (主序号)
' 多线程_复位 (主序号 + MaxHwnd)
UI_更新 (主序号, #UI_删除)
' 日志输出 (“结束成功 主序号:” + 到文本 (主序号))
.子程序 多线程_重新运行, 逻辑型
.参数 主序号, 整数型
.如果真 (主序号 ≤ 0 或 主序号 > MaxHwnd)
返回 (假)
.如果真结束
.如果真 (线程信息 [主序号].线程句柄 = 0)
返回 (假)
.如果真结束
' 先结束
__内部结束 (主序号)
' 再启动
线程信息 [主序号].线程句柄 = 0
线程信息 [主序号].线程状态 = #线程状态_正在启动
线程信息 [主序号].是否暂停 = 假
线程信息 [主序号].是否结束 = 假
' 线程信息 [主序号 + MaxHwnd].线程句柄 = 0
' 线程信息 [主序号 + MaxHwnd].线程状态 = #线程状态_未启动
' 线程信息 [主序号 + MaxHwnd].是否暂停 = 假
' 线程信息 [主序号 + MaxHwnd].是否结束 = 假
' 通知UI更新
UI_更新 (主序号, #UI_更新)
' 创建线程,这里我们只创建主线程,副线程交给主线程去创建
.如果真 (启动线程 (&脚本主线程, 主序号, 线程信息 [主序号].线程句柄) = 假)
UI_更新 (主序号, #UI_删除)
多线程_复位 (主序号)
' 多线程_复位 (主序号 + MaxHwnd)
日志输出 (“创建线程失败”)
返回 (假)
.如果真结束
' 日志输出 (“重新运行 hwnd = ” + 到文本 (线程信息 [主序号].窗口句柄) + “,主序号:” + 到文本 (主序号))
返回 (真)
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|