![]() |
1
18
如果多个线程同时访问列表,则通常会发生这种情况。如果一个线程删除一个元素,而另一个线程调用clear(),则可能发生此异常。 在这种情况下,“答案”是适当地同步这个,锁定所有列表访问。 编辑: 为了处理这个问题,最简单的方法是将列表封装在自定义类中,并公开所需的方法,但根据需要进行锁定。您需要为任何更改集合的内容添加锁定。 这是一个简单的选择:
|
![]() |
2
7
您确定该代码引发了异常吗?我有
我也不例外。 你的现实生活例子更复杂吗?也许您有多个线程同时访问列表?我们能看到堆栈跟踪吗?
如果列表已经为空,则不会引发异常。但是,如果您正在修改另一个线程上的列表,
|
![]() |
3
1
文档没有提到这个方法抛出的任何异常,您的问题可能在其他地方。
|
![]() |
Eddiex045 · 比较两个文本文件,匹配项转到一个新文件 2 年前 |
![]() |
NOBUD · 最大堆插入函数实现C++ 2 年前 |
![]() |
riasc · 嵌套贴图结构创建空贴图 6 年前 |
![]() |
Akshay Barpute · cpp中的以下链表程序有什么问题? 6 年前 |
![]() |
Batwoman05 · C++中是否有具有类似函数的树集数据结构 6 年前 |