【发布时间】:2010-11-08 10:15:54
【问题描述】:
如果我对同步块内的列表执行某些操作,是否会阻止其他线程在其他地方访问该列表?
List<String> myList = new ArrayList<String>();
synchronized {
mylist.add("Hello");
}
这是否会阻止其他线程遍历 myList 并删除/添加值?
我希望从列表中添加/删除值,但同时保护它免受其他线程/方法对其进行迭代(因为列表中的值可能无效)
【问题讨论】:
-
在您的示例中,同步块将无法编译,您要同步什么?
标签: java multithreading synchronization