Thread.setData
在线程环境中存储变量。
setData(key, value)示例
-
在并发线程中设置键值对,在主线程中读取该键值对。
javascriptfunction main() { var t1 = threading.Thread(function() { threading.currentThread().setData("data", 100) }) Sleep(1000) Log(`t1.getData("data"):`, t1.getData("data")) t1.join() } -
支持将函数作为键值传入。
javascriptfunction main() { threading.mainThread().setData("func2", function(p) { Log("func2 p:", p) }) var t1 = threading.Thread(function() { threading.currentThread().setData("func1", function(p) { Log("func1 p:", p) }) var func2 = threading.mainThread().getData("func2") func2("test2") }) Sleep(1000) var func1 = t1.getData("func1") func1("test1") t1.join() }
参数
| 名称 | 类型 | 必填 | 描述 |
key | string | 是 | 存储的键值对的键名。 |
value | string / number / bool / object / array / function / any | 是 | 存储的键值对的键值。 |
参考
备注
数据随Thread对象保存,线程结束(join()或terminate())之后,通过仍持有的Thread对象依然可以读取。参数value的值必须是可序列化的变量。