for(int i=0;i<list.size();i++) 的同时有另一个线程在 remove 或者 add 这里的 list,那么循环的退出条件中的 list.size()在每次循环时不同吗?

2020-05-06 18:51:14 +08:00
 Newyorkcity
我想问的是 java 语言。。

不考虑编译器优化和考虑编译器优化结果会有区别么?

谢谢
1377 次点击
所在节点    问与答
6 条回复
aragakiyuii
2020-05-06 19:13:53 +08:00
异步用 CopyOnWriteArrayList
Jacky23333
2020-05-06 19:16:42 +08:00
因为 fast-fail 机制会抛异常
llcfays
2020-05-06 19:20:23 +08:00
会异常。
xiaoxinshiwo
2020-05-06 19:56:49 +08:00
异常,谢谢
oneisall8955
2020-05-06 20:28:46 +08:00
这就好比 for 循环中,remove 或 add,大概率异常
iffi
2020-05-06 20:42:16 +08:00
1. 这个跟 Java 没任何关系
2. 肯定不同
3. 楼上有些人说的是错的,对于人云亦云的东西,你自己试一下不就知道了?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/669034

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX