最近、調査ConcurrentSkipListMap中にその実装を調べたところ、その put メソッドがスレッドセーフではないことがわかりました。doPut実際にアイテムを追加する内部呼び出し。しかし、この方法ではConcurrentHashMap.
addしたがって、スレッドセーフかどうかを知りたいです。メソッドを見ると、スレッドセーフではないようです。つまり、このメソッドが 2 つのスレッドによって同時に実行されると、問題が発生する可能性があります。
ConcurrentSkipListMap内部でskiplistデータ構造を使用していることは知っていますが、addメソッドがスレッドセーフであることを期待していました。私は何か間違ったことを理解していますか? 本当にConcurrentSkipListMapスレッドセーフではありませんか?