linkedhashmap スレッドセーフ - Java ConcurrentHashMap実装


0 Answers

違い メモリリーク 順序

私はちょうどJavaのConcurrentHashMapのソースコードを見て、このコード行を見つけました:

/*
 * The maximum number of times to tryLock in a prescan before possibly blocking on acquire in   
 * preparation for a locked segment operation. On multiprocessors, using a bounded number of  
 * retries maintains cache acquired while locating nodes.
 */
static final int MAX_SCAN_RETRIES =
              Runtime.getRuntime().availableProcessors() > 1 ? 64 : 1

MAX_SCAN_RETRIESは、ロック取得中にエントリを参照する際に使用されます。 私の質問は、マルチプロセッサマシンで64番の数字がどのように決定されるのかということです。 誰もが64番の背後にある理論を知っていますか?



Related


Tags

java