易语言linux支持多线程,易语言实现双线程的方法解析

易语言怎样写双线程?

一个线程循环找图。一个线程循环按键F2。

.程序集变量 参数, 整数型

.程序集变量 线程句柄1, 整数型

.程序集变量 线程句柄2, 整数型

启动线程 (&子程序1, 参数,线程句柄1)

启动线程 (&子程序2, ,线程句柄2)

.子程序 子程序1

.参数 参数1, 整数型

信息框 (参数1, 0, )

信息框 (“这是线程1的例子”, 0, )

.子程序 子程序2

信息框 (“这是线程2的例子”, 0, )

注意:

凡调用到COM接口插件,像大漠/天使插件,

必须在要运行的子程序里面加上

线程_com初始化。

2楼.

.版本 2

.支持库 EThread.程序集 窗口程序集1

.程序集变量 句柄, 整数型

.子程序 __启动窗口_创建完毕_启动窗口.可视 = 假

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

'&是子程序指针。

'

'

.子程序 子程序1

信息框 (“这是一个线程例子”, 0, )

3楼

打开多线程支持库

.版本 2

.支持库 EThread启动线程 (, , )

调用格式: 〈逻辑型〉 启动线程 (

子程序指针 欲执行的子程序,

[整数型 参数数据],

[整数型 线程句柄])

- 多线程支持库-多线程控制

英文名称:CreateThread

创建并启动一条线程,可重 复使用以创建多条线程,成功返回真,失败返回假。本命令为初级命令。

参数1 的名称为“欲执行的子程序”,类型为“子程序指针(SubPtr)”。本参数提供创建线程时欲启动的子程序,根据是否需要传递参数数据,该子程序必须没有或具有一个整数型参数,否则将出错。

参数2 的名称为“参数数据”,类型为“整数型(int)”,可以被省略。本参数提供线程被启动时传递到欲启动子程序的整数数据。

如果本参数未被省略,此时被启动子程序必须接收一个整数型参数,否则将出错。

参数3 的名称为“线程句柄”,类型为“整数型(int)”,可以被省略,提供参数数据时只能提供变量。如果提供了本参数,将向参数变量写入线程句柄(Windows下为HANDLE,Linux下为pthread_t),请在适当的时机关闭该句柄。

如果不提供本参数接收线程句柄,内部将自动处理线程句柄。

多线程的"并发"与并行的区别: 你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行。 你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭,这说明你支持并发。 你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行。 并发的关键是你有处理多个任务的能力,不一定要同时。并行的关键是你有同时处理多个任务的能力。? 模拟操作UI界面: 多线程程序要具备处理多个任务的能力是必须的,但不一定是要同时,像我们操作UI界面时,虽然可以同时进行,但非常容易出错误,这个时候我们就让线程排队去处理,加载互斥锁,不需要操作UI界面时我们就释放互斥锁,让线程同时运行处理任务。 核心代码与界面分离,使用类模块封装,支持任务线程状态回调,不过我没有写停止线程方法,要写也很简单,在启动时已经把线程句柄存到threadHandleArr里了,循环关闭就行了。调用了精易模块 ,这里就不打包了,大家都有。我接触易语言 时间不长,有些习惯是在其他语言上的,可能有些部分不能充分体现易语言的特点,见谅。 分析实现:YY语音客户Duan多线程模拟登陆 调试源码需要注意的地方: 1、引入精易模块 2、YY客户Duan路径 3、QueueUserWorkItem跟_启动窗口.将被销毁下有结束全部客户Duan的调用方法,如果不需要就给去掉
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值