gpt4 book ai didi

java - 同步集合 getter

转载 作者:行者123 更新时间:2023-12-02 02:53:21 26 4
gpt4 key购买 nike

IIUC,一个仅由同步方法访问的集合应该是线程安全的 - 是这样吗?

例如,

class Foo {
private List<String> mList = new LinkedList<>();
public synchronized List<String> getList() {
return mList;
}
}

假设这个 getter 用于独占来访问列表 - 所有操作都是通过 getList() - 感觉它对我来说应该是线程安全的 - 但我'我很高兴被告知我错了。

泰亚

最佳答案

这很可能不够,因为它只是返回 List 的引用;多个线程仍然能够同时修改它,从而导致竞争条件。如果您正在寻找完全同步的 List,那么我建议使用用 Collections#synchronizedList 包装的 ArrayList

关于java - 同步集合 getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43456272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com