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

  • RaverX DouBle StAg XI

    RaverX DouBl

    23 Mayıs 2008
  • Tina Chen

    Tina Chen

    26 Mayıs 2012
  • YEAH1TV

    YEAH1TV

    19 ŞUBAT 2009