the*_*tna 4 java multithreading thread-safety concurrenthashmap
我使用并发hashmap来创建矩阵.它的指数范围为100k.我创建了40个线程.每个线程访问矩阵的那些元素并对其进行修改并将其写回矩阵,如下所示:
ConcurrentHashMap<Integer, ArrayList<Double>> matrix =
new ConcurrentHashMap<Integer, ArrayList<Double>>(25);
for (Entry(Integer,ArrayList<Double>)) entry: matrix.entrySet())
upDateEntriesOfValue(entry.getValue());
Run Code Online (Sandbox Code Playgroud)
我没有发现它的线程安全.值经常返回为null,我的程序崩溃了.有没有其他方法使其线程安全.或者这是线程安全的,我在其他一些地方有bug.有一点是我的程序在单线程模式下不崩溃.