java - Construisez une collection List non dupliquée, quel est le problème avec ce code?
高洛峰
高洛峰 2017-06-12 09:25:37
0
2
1051
La fonction

espère être implémentée est de réaliser une telle fonction pourList提供一个原子操作:若没有则添加。因为ArrayList本身不是线程安全的,所以通过集合Collections.synchronizedList将其转换为一个线程安全的类,然后通过一个辅助的方法来为List.

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

Ce code est-il dangereux ? Si oui, pouvez-vous le prouver ? Merci

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

répondre à tous (2)
伊谢尔伦

Utilisez simplementConcurrentSkipListSetet c'est très bien

    漂亮男人

    Une liste non répétitive n'est qu'un ensemble, n'est-ce pas ? , nécessite des atomes, n'est-ce pas un ensemble thread-safe ?

      Derniers téléchargements
      Plus>
      effets Web
      Code source du site Web
      Matériel du site Web
      Modèle frontal
      À propos de nous Clause de non-responsabilité Sitemap
      Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!