找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 841|回复: 1

[求助] 全局变量,子程序怎样传递参数到main

[复制链接]
  • 打卡等级:拜师学艺

5

主题

6

回帖

16

积分

学前班

鲜花
0
猫粮
68
发表于 2023-12-2 02:19:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 luyu 于 2023-12-2 02:23 编辑

[按键精灵] 纯文本查看 复制代码
dim n

Thread.Start (a)
Thread.Start (b)

Sub a()
    n = 1
    TracePrint "sub:"&n
End Sub

Function b()
    n = 2
    TracePrint "Function:"&n
    Exit Function
End Function

TracePrint "n:"&n


这两种办法,都没有办法返回n的值

求助怎样实现返回n值

楼主热帖
  • 打卡等级:开宗立派

1087

主题

2141

回帖

4335

积分

院长

鲜花
9
猫粮
7417
QQ
发表于 2023-12-2 10:13:37 | 显示全部楼层
[按键精灵] 纯文本查看 复制代码
Dim 线程ID1, 线程ID2, i
i = 2
//设置全局共享键值
Thread.SetShareVar "我是键名", "我是键值"

//启动子线程,主线程与子线程之间的变量互不影响
线程ID1 = Thread.Start(多线程, 1, "紫猫编程学院")
Delay 100
TracePrint "在主线程中读取结果共享变量为:" &  Thread.GetShareVar("我是键名")

For i = 0 to 5
   TracePrint "主线程的i=" & i
   Delay 1000
Next 
//主线程停止,所有的子线程都会停止

Sub 多线程(序号, 显示内容)
   Dim s
   i = 100
   //读取全局共享键值
   s = Thread.GetShareVar("我是键名")
   TracePrint "在多线程中读取结果共享变量为:" & s
   TracePrint "在多线程中读取结果普通变量i为:" & i
End Sub


详见https://zimaoxy.com/m/post/thread.getsharevar/https://zimaoxy.com/m/post/thread.setsharevar/
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫猫编程学园

GMT+8, 2024-11-23 17:54

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表