国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

java - 構(gòu)建一個(gè)不重復(fù)的List集合,這個(gè)代碼有什么問(wèn)題?
高洛峰
高洛峰 2017-06-12 09:25:37
0
2
1249

希望實(shí)現(xiàn)的功能是為List提供一個(gè)原子操作:若沒(méi)有則添加。因?yàn)?code>ArrayList本身不是線程安全的,所以通過(guò)集合Collections.synchronizedList將其轉(zhuǎn)換為一個(gè)線程安全的類,然后通過(guò)一個(gè)輔助的方法來(lái)為List實(shí)現(xiàn)這么個(gè)功能。

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;  
    }  
}  
 

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

高洛峰
高洛峰

擁有18年軟件開(kāi)發(fā)和IT教學(xué)經(jīng)驗(yàn)。曾任多家上市公司技術(shù)總監(jiān)、架構(gòu)師、項(xiàng)目經(jīng)理、高級(jí)軟件工程師等職務(wù)。 網(wǎng)絡(luò)人氣名人講師,...

全部回復(fù)(2)
伊謝爾倫

ConcurrentSkipListSet不就行了

漂亮男人

不重復(fù)的List,不就是個(gè)Set?,需要原子,不就是線程安全的Set?

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板