国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

java - 構建一個不重復的List集合,這個代碼有什么問題?

瀏覽:87日期:2023-11-06 16:49:17

問題描述

希望實現的功能是為List提供一個原子操作:若沒有則添加。因為ArrayList本身不是線程安全的,所以通過集合Collections.synchronizedList將其轉換為一個線程安全的類,然后通過一個輔助的方法來為List實現這么個功能。

class BadListHelper <E> { public List<E> list = Collections.synchronizedList(new ArrayList<E>()); public synchronized boolean putIfAbsent(E x) { boolean absent = !list.contains(x); if (absent) list.add(x); return absent; } }

這個代碼是線程不安全的嗎?如果是,可以證明一下嗎?謝謝

問題解答

回答1:

用ConcurrentSkipListSet不就行了

回答2:

不重復的List,不就是個Set?,需要原子,不就是線程安全的Set?

標簽: java
主站蜘蛛池模板: 玉龙| 长白| 韩城市| 廉江市| 台南县| 云阳县| 泾源县| 敦化市| 抚州市| 崇阳县| 壶关县| 凌源市| 宿松县| 南陵县| 宜兴市| 铁岭市| 连云港市| 凉城县| 晋州市| 儋州市| 高阳县| 平阳县| 得荣县| 枣强县| 郑州市| 定州市| 内黄县| 高密市| 元谋县| 德令哈市| 古蔺县| 理塘县| 隆子县| 伊通| 仪陇县| 定南县| 保德县| 新昌县| 黎平县| 平罗县| 保亭|