|
30精币
执行数大于线程数时候点击开始没有反应,调试到第二次以后第三次就调试不了,不知道是什么原因,只有执行数等于线程数时候才可以运行,求大佬解决!
代码:
如果真 (到整数 (编辑框2.内容 ) > 到整数 (编辑框1.内容 )) 编辑框2.内容 = 编辑框1.内容 调试输出 (“第一次调试”)判断 (按钮开始线程.标题 = “开始”)调试输出 (“第二次调试”)调试输出 (线程_创建 (&线程操作, , , , , , , 真, , )) 如果真 (线程_创建 (&线程操作, , , , , , , 真, , ) = 假)调试输出 (“第三次调试”)按钮开始线程.禁止 = 假 返回 ()按钮开始线程.标题 = “暂停”运行状态.执行成功 = 0 工作中 = 真 判断 (按钮开始线程.标题 = “暂停”)工作线程池. 暂停 ()暂停状态 = 真 按钮开始线程.标题 = “继续”判断 (按钮开始线程.标题 = “继续”)工作线程池. 继续 ()暂停状态 = 假 按钮开始线程.标题 = “暂停”变量名 | 类 型 | 静态 | 数组 | 备 注 | bool | 逻辑型 | | | 列表数 | 整数型 | | | 导入行数 | 整数型 | | |
zhong.线程数 = 到整数 (编辑框2.内容 )线程数 = zhong.线程数 判断 (线程数 > 999 )线程数 = 999 如果真 (工作线程池. 取_状态 () ≠ 0 )信息框 (“线程池未初始化!”, 3, , )返回 ()如果真 (工作线程池. 创建 (线程数, 线程数, , 真, ) = 假)信息框 (“线程池创建失败!”, 3, , )返回 ()总数 = 到整数 (编辑框1.内容)运行状态.派发任务数量 = 总数 计次循环首 (线程数, ) 工作线程池. 投递任务 (&任务程序 )计次循环尾 ()判断循环首 (工作线程池. 取_执行线程数 () ≠ 0 )_延迟 (2000 )判断循环尾 ()工作中 = 假 工作线程池. 销毁 (2, , 真)按钮开始线程.禁止 = 假 按钮停止线程.标题 = “停止”按钮开始线程.标题 = “开始”按钮停止线程.禁止 = 假 运行状态.执行成功 = 0 线程_初始化COM库 ()临界. 进入 ()行数 = 超级列表框注册. 插入表项 (, , , , , )临界. 退出 ()循环判断首 ()超级列表框注册. 保证显示 (行数 )超级列表框注册. 置标题 (行数, 0, 到文本 (行数 + 1 )) 超级列表框注册. 置标题 (行数, 1, “正在执行...”)置随机数种子 ()程序_延时 (取随机数 (100, 1000 )) 结果 = 取随机数 (1, 10 )超级列表框注册. 置标题 (行数, 2, 到文本 (结果 )) 如果 (结果 > 5 )超级列表框注册. 置标题 (行数, 1, “成功”)原子_递增_asm (运行状态.执行成功 )调试输出 (运行状态.执行成功 )超级列表框注册. 置标题 (行数, 3, “失败”)调试输出 (“结果” + 到文本 (结果))超级列表框注册. 置标题 (行数, 3, 到文本 (结果 )) 循环判断尾 (结果 < 5 )线程_取消COM库 ()如果真 (工作线程池. 取_执行线程数 () < 总数 - 运行状态.执行成功 )启动线程 (&任务程序, , )如果真 (工作线程池. 取_状态 () = 0 )按钮开始线程.标题 = “运行完毕”
|
-
最佳答案
查看完整内容
调试输出 (线程_创建 (&线程操作, , , , , , , 真, , ))
如果真 (线程_创建 (&线程操作, , , , , , , 真, , ) = 假)
重复了 给第一个赋值个变量 第二步用变量判断
|