AtomicInteger реализован на базе JNI? - PullRequest
3 голосов
/ 07 января 2012

Soneone сказал мне, что AtomicInteger реализован с использованием JNI, так что это намного быстрее, чем синхронизация. Это правда?

Ответы [ 2 ]

7 голосов
/ 07 января 2012

Это вряд ли будет реализовано на основе JNI, так как это повлечет за собой значительные накладные расходы.В прошлый раз, когда я смотрел, реализация OpenJDK основана на методах в sun.misc.Unsafe, которые в основном реализованы как примитивы JVM (вызовы методов, которые реализованы специально с собственным кодом в JVM).

0 голосов
/ 07 января 2012

Что касается вопроса, AtomicInteger не вызывает блокировочный механизм синхронизации, поэтому может предложить преимущества производительности в подходящих обстоятельствах.

...