Foxtable(狐表)用户栏目专家坐堂 → 字典在异步函数下问题


  共有2866人关注过本帖树形打印复制链接

主题:字典在异步函数下问题

帅哥哟,离线,有人找我吗?
z769036165
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:760 积分:5430 威望:0 精华:0 注册:2012/10/5 21:53:00
字典在异步函数下问题  发帖心情 Post By:2021/5/17 11:33:00 [只看该作者]

定义了一个字典

Dim zd As New Dictionary(Of Integer, String)

zd.Add(1,"苹果")
zd
.Add(2,"香蕉")
zd
.Add(3,"波罗")
zd
.Add(4,"桔子")
zd
.Add(5,"桃子")



有一个内部函数send()


在窗口按钮中异步执行这个函数,参数传递这个字典,同时将字典值清空


Functions.AsyncExecute("send",zd)

zd("1") = ""

zd("2") = ""

zd("3") = ""

zd("4") = ""

zd("5") = ""


在函数中定义一个字典接收传递过来的值

Dim zdcd As Dictionary(of Integer,String) = args(0)


发现zdcd("1")的值也被清空了,如果窗口中不对zd字典的值清空,则zdcd字典的值存在,请问这个不能这样写么?



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/5/17 11:52:00 [只看该作者]

这个是正常的,因为字典属于引用类型。如果要保留函数值,就不要清空

 回到顶部