Запитання з тегом «concurrenthashmap»

5
Чи безпечна нитка значень ConcurrentHashMap?
У javadoc для ConcurrentHashMap є наступне: Операції пошуку (включаючи get), як правило, не блокуються, тому можуть перетинатися з операціями оновлення (включаючи ставити та видаляти). Результати пошуку відображають результати останніх завершених операцій з оновлення, проведених після їх початку. Для сукупних операцій, таких як putAll та clear, паралельні вилучення можуть відображати вставлення …

7
Чому ConcurrentHashMap запобігає нульовим ключам і значенням?
JavaDoc ConcurrentHashMapговорить про це: Як Hashtableі на відміну від HashMapцього, цей клас не дозволяє nullвикористовуватись як ключ або значення. Моє запитання: Чому? 2-е питання: Чому не Hashtableдозволити нуль? Я використовував багато HashMaps для зберігання даних. Але при переході до ConcurrentHashMapмене кілька разів потрапляли проблеми через NullPointerExceptions.

3
Чи повільна реалізація gcc std :: unordered_map? Якщо так - чому?
Ми розробляємо високоефективне програмне забезпечення на C ++. Там нам потрібна паралельна хеш-карта та реалізована. Тому ми написали орієнтир, щоб визначити, наскільки повільніше порівняно з нашою паралельною хеш-картою std::unordered_map. Але, std::unordered_mapздається, це надзвичайно повільно ... Отже, це наш мікро-орієнтир (для паралельної карти ми породили нову нитку, щоб переконатися, що блокування …


3
Рекурсивний виклик ConcurrentHashMap.computeIfAbsent () ніколи не припиняється. Помилка чи “функція”?
Деякий час тому я писав у блозі про функціональний спосіб Java 8 для обчислення чисел Фібоначчі рекурсивно , з ConcurrentHashMapкешем та новим, корисним computeIfAbsent()методом: import java.util.Map; import java.util.concurrent.ConcurrentHashMap; public class Test { static Map<Integer, Integer> cache = new ConcurrentHashMap<>(); public static void main(String[] args) { System.out.println( "f(" + 8 + …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.