首页 新闻 搜索 专区 学院

.net 数组是否多线程安全

0
悬赏园豆:20 [已解决问题] 解决于 2018-05-02 09:09

我这样使用数组是否多线程安全, 我这里只是局部代码不知道大家看的明白不

图中代码目的是为了把activeUsers 集合中的对象转成UserActiveLogModel 数组

然后.net 数组在哪些场景下多线程安全, 哪些不安全

Mirck的主页 Mirck | 初学一级 | 园豆:124
提问于:2018-04-18 09:53
< >
分享
最佳答案
0

楼上说的没有线程安全问题,不是说数组就是线程安全的,只是说你这样用不涉及到数组的线程安全问题。

因为虽然你的代码是并行处理,但是并不存在同时对同一个内存空间进行读写的问题。

如果你把i改成一个常数0,那么就有可能出现线程安全问题.

收获园豆:15
连山In17 | 菜鸟二级 |园豆:223 | 2018-04-18 14:16
其他回答(1)
0

你的代码没有线程安全问题.

收获园豆:5
吴瑞祥 | 园豆:29185 (高人七级) | 2018-04-18 11:41

那网上都说 数组不是线程安全的, 有点不理解 哪些场景下多线程安全, 哪些不安全 呢

支持(0) 反对(0) Mirck | 园豆:124 (初学一级) | 2018-04-18 11:55

@Mirck: 线程安全是指你有多个线程对同一个资源进行操作.注意这个同一个

你这代码并没有对同一个资源进行操作.本质上你是每个线程对这个数组里的某一个下标进行操作.

你没有操作数组的本身,也没有多个线程操作数组某一个相同的下表.

你可以百度下.net线程安全的类.然后看他提供的那些线程安全的方法.就能理解线程安全是什么了.

支持(0) 反对(0) 吴瑞祥 | 园豆:29185 (高人七级) | 2018-04-18 15:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册