SORU
4 ŞUBAT 2009, ÇARŞAMBA


'ConcurrentHashMap ve Koleksiyonları arasındaki fark ne.synchronizedMap(Göster)?

Birden çok iş parçacığı tarafından aynı anda değiştirilecek olan bir Harita var.

Java API içinde üç farklı senkronize Harita uygulamaları gibi görünüyor

  • Hashtable
  • Collections.synchronizedMap(Map)
  • ConcurrentHashMap

Anladığım kadarıyla Hashtable sonraki Map arayüzü uyacak şekilde adapte edilmiş eski bir uygulama (Dictionary eski sınıfını genişletme),. Bu süresenkronize, 10* *ciddi gibi görünüyor ve yeni projeler için önerilmez.

Peki ya diğer ikisi? Ne Haritalar Collections.synchronizedMap(Map) ConcurrentHashMaps tarafından döndürülen arasındaki farklar? Hangisi hangi duruma uyuyor?

CEVAP
4 ŞUBAT 2009, ÇARŞAMBA


İhtiyaçlarınız için, ConcurrentHashMap kullanın. Onları engellemek için gerek kalmadan birden çok iş parçacığı Haritanın eşzamanlı değişiklik sağlar. Collections.synchronizedMap(map) performans, tutarlılık, eğer düzgün kullanılırsa) sağlamak da olsa düşer engelleyici bir Harita oluşturur.

Eğer veri tutarlılığı sağlamak için gerekirse ikinci seçeneği kullanın ve her bir iplik haritanın güncel bir görünüm olması gerekir. Eğer performans önemli ise, ilk kullanım ve her iş parçacığı okur daha az sıklıkta oluyor ile haritaya veri ekler.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BSA

    BSA

    9 NİSAN 2012
  • Howcast

    Howcast

    4 EKİM 2007
  • HowcastSportsFitness

    HowcastSport

    11 Mayıs 2011