书香 发表于 2023-5-18 19:39

【多线程+死循环】

本帖最后由 书香 于 2024-2-10 04:18 编辑

这是非常常见的一种写法,先说说什么是死循环,一般指的是无限循环的判断循环首,写法如下:
.版本 2

.判断循环首 (真)
    ' 你的代码
.判断循环尾 ()

判断条件直接写真

整体代码如下:
.版本 2
.支持库 EThread

.子程序 __启动窗口_创建完毕

启动线程 (&子程序1, , )


.子程序 子程序1

.判断循环首 (真)
    ' 你的代码
.判断循环尾 ()


解释:

一般而言,子程序死循环内写的都是检测代码,即需要一直执行操作的,如果不用线程,那么执行到子程序1就会一直执行,最终的结果就是窗口卡住(不是卡死)

难点:
卡死和卡住是有区别的,卡死是程序暂停执行了,卡住是程序在运行,但是窗口操作(移动,单击按钮等)是需要占用线程的,如果当前程序只有1个线程,且在执行其他子程序(尤其是死循环),那么就会使得窗口卡住,直到其他子程序执行完毕才可操作


(点击返回课程目录:https://www.52hb.com/thread-58658-1-1.html)

sjtkxy 发表于 2023-6-9 04:58

longge188 发表于 2023-8-26 09:34

谢谢分享
页: [1]
查看完整版本: 【多线程+死循环】