关于e4a的多线程操作
据我所知e4a的多线程操作比较困难 官方例子也就是个获取网页源码的范例 市面上也很少有多线程操作的真正方法 好像都是用时钟来代替的 我现在有个需求 要定时执行几个指令 如果用时钟 肯定会重复执行因为我不知道执行完需要多久 这个时钟周期无法定下来比如执行1指令
延时 2000
执行2指令
执行10秒
以上的一段代码要循环执行 如果易语言就很方便的写个线程即可 但是e4a 如何利用时钟来写呢 因为时钟有时钟周期 如果代码执行到一半 时钟周期到期 又会启动新的操作 会造成错误
请教各位大神 如何用时钟来循环执行以上的代码
一个时钟,一个函数,或过程,时钟定时,执行代码前关闭时钟,代码执行完毕,在开启时钟,关键你的还是属于定时任务,如果要执行多个,并且定时,才用多线程+定时 啥意思?
是:
执行1指令
延时 2秒
执行2指令
延时 10秒
这个意思吗? 本帖最后由 XF谭镇洋 于 2020-5-9 11:33 编辑
哦哦哦,我明白了
楼主的意思是:2个命令循环执行,而且每次命令要执行完才能下一次循环,是这个意思
这样的话用时钟可能会方便点,当然也可以用方法-->方法死循环。
先弄两个时钟,然后初始周期设定最低(1毫秒)
时钟代码:
事件 时钟1.周期事件()
命令1()
时钟1.可用=假
结束 事件
事件 时钟2.周期事件()
命令2()
时钟2.可用=假
结束 事件过程代码:
过程 命令1()
'这里写命令执行过程
时钟1.时钟周期=1
结束 过程
过程 命令2()
'这里写命令执行过程
时钟2.时钟周期=1
结束 过程
试试~
就来看看了 XF谭镇洋 发表于 2020-5-9 11:26
哦哦哦,我明白了
楼主的意思是:2个命令循环执行,而且每次命令要执行完才能下一次循环,是这个意思
这样 ...
万分感谢 我先感谢再看代码 捋一下 e4a的多线程太麻烦了 XF谭镇洋 发表于 2020-5-9 11:26
哦哦哦,我明白了
楼主的意思是:2个命令循环执行,而且每次命令要执行完才能下一次循环,是这个意思
这样 ...
请问那我又如何循环执行再用一个时钟?易语言的代码如下
.版本 2
.支持库 EThread
.支持库 spec
.程序集变量 是否循环, 逻辑型
.子程序 __启动窗口_创建完毕
是否循环 = 真
启动线程 (&循环, , )
.子程序 循环
.判断循环首 (是否循环 = 真)
写到文件 (取运行目录 () + “/dd.txt”, 到字节集 (“你好”))
延迟 (2000)
写到文件 (取运行目录 () + “/dd.txt”, 到字节集 (“你不好好”))
延迟 (10000)
.判断循环尾 ()
zzh233 发表于 2020-5-9 13:38
请问那我又如何循环执行再用一个时钟?易语言的代码如下
.版本 2
哪有,也许你和我一样一开始也脑昏昏吧……正常。你在时钟先执行了一次命令,然后关闭时钟,在过程结束时又开启时钟,就能做到循环了。 zzh233 发表于 2020-5-9 13:38
请问那我又如何循环执行再用一个时钟?易语言的代码如下
.版本 2
楼主好像是想要把易语言代码翻译成E4A代码嘛?
页:
[1]