易语言启动线程通过变量或数组传递文本型参数

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

演示传递文本参数

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

511遇见(www.511yj.com) 

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

主线程 

511遇见(www.511yj.com) 

.版本 2
 
.子程序 主线程
.参数 文本参数, 文本型
 
输出调试文本 (文本参数)

封装传递文本参数

511遇见(www.511yj.com) 

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

调用启动线程_文本

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

文本和数组传递文本型参数的两种方法

.版本 2 .支持库 EThread .支持库 spec  .程序集 窗口程序集1, , , 511遇见(www.511yj.com) .程序集变量 文本数组, 文本型, , "0"  .子程序 _按钮1_被单击, , , 511遇见(www.511yj.com) .局部变量 i, 整数型 .局部变量 变量, 文本型  .计次循环首 (100, i)     变量 = 到文本 (i)  ' 变量是文本型哦     启动线程 (&Thread1, 取变量数据地址 (变量))     延迟 (2)  ' 为了不出乱码 .计次循环尾 ()  .子程序 Thread, , , 511遇见(www.511yj.com) .参数 序号, 整数型  调试输出 (文本数组 [序号]) ' 数组间接传递  .子程序 Thread1, , , 511遇见(www.511yj.com) .参数 文本, 文本型  调试输出 (文本) ' 变量直接传递  .子程序 _按钮2_被单击, , , 511遇见(www.511yj.com) .局部变量 i, 整数型  .计次循环首 (100, i)     加入成员 (文本数组, 到文本 (i))     延时 (1)  ' 保持有效时间范围     启动线程 (&Thread, i) .计次循环尾 () 

.版本 2
.支持库 EThread
.支持库 spec

.程序集 窗口程序集1, , , 511遇见(www.511yj.com)
.程序集变量 文本数组, 文本型, , "0"

.子程序 _按钮1_被单击, , , 511遇见(www.511yj.com)
.局部变量 i, 整数型
.局部变量 变量, 文本型

.计次循环首 (100, i)
    变量 = 到文本 (i)  ' 变量是文本型哦
    启动线程 (&Thread1, 取变量数据地址 (变量))
    延迟 (2)  ' 为了不出乱码
.计次循环尾 ()

.子程序 Thread, , , 511遇见(www.511yj.com)
.参数 序号, 整数型

调试输出 (文本数组 [序号])
' 数组间接传递

.子程序 Thread1, , , 511遇见(www.511yj.com)
.参数 文本, 文本型

调试输出 (文本)
' 变量直接传递

.子程序 _按钮2_被单击, , , 511遇见(www.511yj.com)
.局部变量 i, 整数型

.计次循环首 (100, i)
    加入成员 (文本数组, 到文本 (i))
    延时 (1)  ' 保持有效时间范围
    启动线程 (&Thread, i)
.计次循环尾 ()

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

511遇见

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值