Tôi cần một HashMap có thể truy cập từ nhiều luồng.Có bất kỳ hạn chế nào với ConcurrentHashMap không?
Có hai tùy chọn đơn giản, sử dụng HashMap bình thường và đồng bộ hóa trên đó hoặc sử dụng ConcurrentHashMap.
Vì ConcurrentHashMap không chặn hoạt động đọc, có vẻ như nó phù hợp hơn cho nhu cầu của tôi (hầu như chỉ đọc, gần như không bao giờ cập nhật). Mặt khác, tôi mong đợi đồng thời rất thấp, vì vậy không nên chặn (chỉ là chi phí quản lý khóa).
Bản đồ cũng sẽ rất nhỏ (dưới mười mục nhập), nếu điều đó tạo ra sự khác biệt.
So với HashMap thông thường, hoạt động đọc và ghi tốn kém hơn bao nhiêu (tôi cho rằng chúng là)? Hoặc là ConcurrentHashMap luôn luôn tốt hơn khi có thể thậm chí là một mức độ vừa phải truy cập đồng thời, bất kể tỷ lệ đọc/cập nhật và kích thước?
câu hỏi trùng lặp chính xác? http://stackoverflow.com/questions/1378310/performance-concurrenthashmap-vs-hashmap – andersoj
Thật vậy. Cảm ơn.(Không có câu trả lời thỏa đáng ở đó, mặc dù) – Thilo