搜索
编程论坛
→
.NET专区
→
『 C# 论坛 』
→ 请教 锁定变量而不锁代码 用什么关键字?
标题:
请教 锁定变量而不锁代码 用什么关键字?
只看楼主
某一天
等 级:
论坛游民
威 望:
1
帖 子:33
专家分:77
注 册:2015-6-15
结帖率:
0
楼主
问题点数:0 回复次数:2
请教 锁定变量而不锁代码 用什么关键字?
比如:
一个数组 int[] Arr = new Arr[2];
代码A:
Arr[n]++; // n为0或1
现在线程1执行A,其参数n = 0,需要锁定Arr[0],而不锁定A(也就是说线程2可以通过A操作Arr[1]
使用什么关键字?Lock的话,好像会连A一起锁定啊!
搜索更多相关主题的帖子:
关键字
2015-08-24 16:47
yhlvht
等 级:
贵宾
威 望:
36
帖 子:707
专家分:4405
注 册:2011-9-30
第
2
楼
得分:0
这个嘛,Arr[n]是锁不了的啦,不过你可以定义一个object数组,位数与你的int数组相同,记得实例化每个object
object[] arrObj = new object[2];
arrObj[0] = new object();
arrObj[1] = new object();
然后锁arrObj[n]就可以了
2015-10-06 23:45
某一天
等 级:
论坛游民
威 望:
1
帖 子:33
专家分:77
注 册:2015-6-15
第
3
楼
得分:0
回复 2楼 yhlvht
谢谢了,我改用了ManualResetEvent对象,基本上解决问题了
2015-11-17 11:13
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-456719-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.964607 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved