易语言启动线程传递文本参数

易语言封装的启动线程是无法传递文本参数的,我们可以为这个要传递的文本申请一个内存地址,把这个地址传递过去,下面通过演示和封装来说明实现过程。

演示传递文本参数

1、创建一个文本型的变量,来存储要传递的文本
2、为这段文本申请内存,返回内存地址
3、把文本参数写到内存
4、启动线程,传递地址。
5、启动的主线程的参数设置为文本型,接受传进来的文本

.版本 2
.支持库 spec
.支持库 EThread
 
.局部变量 文本参数, 文本型
.局部变量 传递地址, 整数型
 
文本参数 = “我是启动线程要传递的文本”
传递地址 = 申请内存 (取文本长度 (文本参数) + 1, 真)
写到内存 (到字节集 (文本参数), 传递地址, )
启动线程 (&主线程, 传递地址, )

主线程

.版本 2
 
.子程序 主线程
.参数 文本参数, 文本型
 
输出调试文本 (文本参数)
封装传递文本参数
.版本 2
.支持库 spec
.支持库 EThread
 
.子程序 启动线程_文本, 逻辑型
.参数 子程序, 子程序指针
.参数 文本参数, 文本型
.局部变量 传递地址, 整数型
 
传递地址 = 申请内存 (取文本长度 (文本参数) + 1, 真)
写到内存 (到字节集 (文本参数), 传递地址, )
返回 (启动线程 (子程序, 传递地址, ))

调用启动线程_文本
启动线程_文本 (&主线程, “我是启动线程要传递的文本”)

你可能感兴趣的:(多线程,易语言,线程池)