public class Test {
static List list = new ArrayList<>();
Object object = new Object();
public List getList() {
new Thread(new Runnable() {
@Override
public void run() {
synchronized (object) {
list.add("1");
}
}
}).start();
return list;
}
}
为什么多线程给list添加内容,最后返回为空?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
6条回答 默认 最新
weiqiang_java 2019-10-09 21:02关注没有等待子线程就return 了,所以所以没有执行 list.add("1");
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报