开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 904|回复: 14
收起左侧

[已解决] 任务实时暂停停止

 关闭 [复制链接]
结帖率:93% (71/76)
发表于 2024-12-7 03:06:35 | 显示全部楼层 |阅读模式   四川省南充市
88精币
有没有办法实时监控变量,控制任务暂定/停止?

比如在循环首中实时监控一个逻辑变量,变量为真时立即暂停当前任务或停止当前任务。不是线程 不是线程 不是线程

目前的鱼刺线程暂停要等当前线程跑完才会暂停,但是我一条线程要循环100次任务,所以等于点了暂停也没用,结束也是一样。。。

给个思路,各位前辈。

最佳答案

查看完整内容

循环里有延时,就把处理事件()加在循环尾部。不至于程序假死或者占用CPU太高,同时可以让系统处理键盘鼠标等操作,如图,不用线程启动的情况下,循环里有延时,鼠标是没法拖动窗口的,并且标签也不会显示相应的内容, 但是加了处理事件(),就不一样了。

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳

结帖率:99% (126/127)

签到天数: 20 天

发表于 2024-12-7 03:06:36 | 显示全部楼层   贵州省贵阳市
学习委员 发表于 2024-12-7 03:55
4202年了,还有新手在苦苦钻研易语言。。。主要是处理事件()我不太熟悉,我试试去 ...

循环里有延时,就把处理事件()加在循环尾部。不至于程序假死或者占用CPU太高,同时可以让系统处理键盘鼠标等操作,如图,不用线程启动的情况下,循环里有延时,鼠标是没法拖动窗口的,并且标签也不会显示相应的内容,
但是加了处理事件(),就不一样了。

11221212.gif

评分

参与人数 1荣誉 +1 收起 理由
笨潴 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:99% (126/127)

签到天数: 20 天

发表于 2024-12-7 03:38:38 | 显示全部楼层   贵州省贵阳市
循环100次?,那比如50次的时候变量复合条件就跳出循环啊。剩下的50次不就不需要继续了么?
所有线程都一样。不管正在循环的是第几次?复合条件了就所有正在执行的线程全部跳出循环。
回复

使用道具 举报

结帖率:93% (71/76)

签到天数: 11 天

 楼主| 发表于 2024-12-7 03:46:03 | 显示全部楼层   四川省南充市
xiaoyu1986 发表于 2024-12-7 03:38
循环100次?,那比如50次的时候变量复合条件就跳出循环啊。剩下的50次不就不需要继续了么?
所有线程都一样 ...

如果要跳出循环,可以在循环开头或者结尾用变量控制跳出循环。那如果想暂停这个循环呢,用事件处理好像可以,但是我不会写。

补充内容 (2024-12-7 03:49):
好像是在计次循环首里面,加一个判断循环首,判断循环首里面加处理事件,判断到暂停变量就加个大延迟,恢复就继续

点评

我觉得你说的非常有道理。在计次循环里加另一个暂停变量,判断循环做暂停   贵州省贵阳市  详情 回复 发表于 2024-12-7 03:52
回复

使用道具 举报

结帖率:99% (126/127)

签到天数: 20 天

发表于 2024-12-7 03:52:31 | 显示全部楼层   贵州省贵阳市
学习委员 发表于 2024-12-7 03:46
如果要跳出循环,可以在循环开头或者结尾用变量控制跳出循环。那如果想暂停这个循环呢,用事件处理好像可 ...

我觉得你说的非常有道理。在计次循环里加另一个暂停变量,判断循环做暂停
回复

使用道具 举报

结帖率:93% (71/76)

签到天数: 11 天

 楼主| 发表于 2024-12-7 03:55:08 | 显示全部楼层   四川省南充市
xiaoyu1986 发表于 2024-12-7 03:52
我觉得你说的非常有道理。在计次循环里加另一个暂停变量,判断循环做暂停 ...

4202年了,还有新手在苦苦钻研易语言。。。主要是处理事件()我不太熟悉,我试试去

点评

循环里有延时,就把处理事件()加在循环尾部。不至于程序假死或者占用CPU太高,同时可以让系统处理键盘鼠标等操作,如图,不用线程启动的情况下,循环里有延时,鼠标是没法拖动窗口的,并且标签也不会显示相应的内容   贵州省贵阳市  详情 回复 发表于 2024-12-7 04:07
回复

使用道具 举报

结帖率:93% (71/76)

签到天数: 11 天

 楼主| 发表于 2024-12-7 04:16:31 | 显示全部楼层   四川省南充市
xiaoyu1986 发表于 2024-12-7 04:07
循环里有延时,就把处理事件()加在循环尾部。不至于程序假死或者占用CPU太高,同时可以让系统处理键盘鼠 ...

处理事件是用来操作控件的吗?我以为是用来同时运行其他代码的。那这样的话即使是在计次循环首中加一个判断循环首,也是要等当前计次循环跑完后才能判断停止或者不停止呀

点评

处理事件的作用很多,也很玄幻,不单单是操作控件。。 总结一下: 1,避免程序假死。2,暂时转让控制权处理键盘输入,鼠标操作。3,短暂暂停让程序执行其他操作提高响应速度。 4,防止CPU占用过高,尤其是在循环执行   贵州省贵阳市  详情 回复 发表于 2024-12-7 04:27
回复

使用道具 举报

结帖率:93% (71/76)

签到天数: 11 天

 楼主| 发表于 2024-12-7 04:22:48 | 显示全部楼层   四川省南充市
因为是跑的脚本,而脚本有卡点,任何时候都可能卡住,所以等不到当前任务跑完。。。所以有没有办法立即停止或暂停。
QQ20241207-042103.png

点评

你是一句没听进去啊。。。-_-||   贵州省贵阳市  发表于 2024-12-7 04:29
回复

使用道具 举报

结帖率:99% (126/127)

签到天数: 20 天

发表于 2024-12-7 04:27:30 | 显示全部楼层   贵州省贵阳市
学习委员 发表于 2024-12-7 04:16
处理事件是用来操作控件的吗?我以为是用来同时运行其他代码的。那这样的话即使是在计次循环首中加一个判 ...

处理事件的作用很多,也很玄幻,不单单是操作控件。。
总结一下:
1,避免程序假死。2,暂时转让控制权处理键盘输入,鼠标操作。3,短暂暂停让程序执行其他操作提高响应速度。
4,防止CPU占用过高,尤其是在循环执行很快,循环次数多的情况下,避免程序卡死。
5,窗口事件处理,按钮点击、窗口移动、文本输入等。6,多线程中改善界面卡顿的情况。
不知阁下稍微有点领悟没有?实际上不需要纠结这个处理事件(),干就完了。
回复

使用道具 举报

结帖率:93% (71/76)

签到天数: 11 天

 楼主| 发表于 2024-12-7 04:31:18 | 显示全部楼层   四川省南充市
xiaoyu1986 发表于 2024-12-7 04:27
处理事件的作用很多,也很玄幻,不单单是操作控件。。
总结一下:
1,避免程序假死。2,暂时转让控制权处 ...

它可以让程序先执行其他操作吗?我想的是在计次循环首里面加一个判断循环首,在判断循环首里面加一个处理事件(),让原本的计次循环首任务先跑,然后可以实时判断变量状态,用来立即停止或暂停任务,我不知道任务能不能暂停和停止,我只搜到线程的暂停和停止。我上传了图片
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表