首页
新闻
会员
周边
捐助
园子
·
关注
·
粉丝
·
会员
·
随便看看
·
消息
欢迎,请先
登录
或者
注册
。
登录
/
注册
闪存
博客
发言
小组
投递
新闻
提问
博问
添加
收藏
文库
问题反馈
问题列表
我关注的
我的博问
博问标签
Hashtable怎么在多线程里一边修改一边遍历,而不会提示:集合已修改
0
[已解决问题]
解决于 2011-06-08 17:05
lock不行,复制也不行,Synchronized也不行
.NET技术
.NET Framework
拖鞋王子
|
初学一级
|
园豆:
38
提问于:2011-06-02 17:49
显示帮助
使用"Ctrl+Enter"可进行快捷提交,评论支持部分 Markdown 语法:[link](http://example.com) _italic_ **bold** `code`。
<
>
分享
分享您的问题
最佳答案
0
那是集合在foreach中都不能修改啊···,不然肯定不可预知
还是做一份copy遍历copy修改原数据吧~~
LittlePeng
|
老鸟四级
|
园豆:3445
|
2011-06-02 20:51
如何copy,用构造方法复制的时候也会报错的
拖鞋王子
|
园豆:38
(初学一级)
|
2011-06-03 14:22
通过keys遍历就行
LittlePeng
|
园豆:3445
(老鸟四级)
|
2011-06-03 20:18
遍历keys或values的时候也会报错
拖鞋王子
|
园豆:38
(初学一级)
|
2011-06-08 12:35
o~~这样啊,HashTable的枚举器实现这样啊··,那么用.Clone() 做一下浅拷贝总行吧。
就是你不能遍历一个集合的再去修改,那么你就可以遍历另外一个集合去修改就行了。遍历.Clone()然后去修改实际的就行啦、
LittlePeng
|
园豆:3445
(老鸟四级)
|
2011-06-23 20:18
编辑文本
预览
上传图片
Ctrl+Enter键快速提交
清除回答草稿
您需要
登录
以后才能回答,未注册用户请先
注册
。