Объявления уровня пакета
Атомарные скалярные типы и типы массивов, а также утилиты для работы с ними.
Типы
Версия Kotlin начиная с: 2.1
expect class AtomicArray<T>
Обобщённый массив объектов, элементы которого можно обновлять атомарно.
Версия Kotlin начиная с: 2.1
expect class AtomicBoolean(value: Boolean)
Значение Boolean, которое можно обновлять атомарно.
Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)
expect class AtomicInt(value: Int)
Значение Int, которое можно обновлять атомарно.
Платформы и требования к версиям: Native (2.1)
actual class AtomicInt(var value: Int)
Значение Int, которое можно обновлять атомарно.
Версия Kotlin начиная с: 2.1
expect class AtomicIntArray
Массив целых чисел, элементы которого можно обновлять атомарно.
Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)
expect class AtomicLong(value: Long)
Значение Long, которое можно обновлять атомарно.
Платформы и требования к версиям: Native (2.1)
actual class AtomicLong(var value: Long)
Значение Long, которое можно обновлять атомарно.
Версия Kotlin начиная с: 2.1
expect class AtomicLongArray
Массив значений типа Long, элементы которого можно обновлять атомарно.
Платформы и требования к версиям: Native (2.1)
class AtomicNativePtr(var value: NativePtr)
Значение kotlinx.cinterop.NativePtr, которое можно обновлять атомарно.
Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)
expect class AtomicReference<T>(value: T)
Ссылка на объект, которую можно обновлять атомарно.
Платформы и требования к версиям: Native (2.1)
actual class AtomicReference<T>(var value: T)
Ссылка на объект, которую можно обновлять атомарно.
Платформы и требования к версиям: Common (2.1)
annotation class ExperimentalAtomicApi@Target(allowedTargets = [AnnotationTarget.CLASS,AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPEALIAS ] )
Эта аннотация обозначает экспериментальный API атомарных операций Kotlin.
Функции
Платформа и требования к версии: JVM (2.1)
fun AtomicBoolean.asJavaAtomic(): AtomicBoolean
Приводит данный экземпляр AtomicBoolean к типу java.util.concurrent.atomic.AtomicBoolean.
fun AtomicInt.asJavaAtomic(): AtomicInteger
Приводит данный экземпляр AtomicInt к типу java.util.concurrent.atomic.AtomicInteger.
fun AtomicLong.asJavaAtomic(): AtomicLong
Приводит данный экземпляр AtomicLong к типу java.util.concurrent.atomic.AtomicLong.
fun <T> AtomicReference<T>.asJavaAtomic(): AtomicReference<T>
Приводит данный экземпляр AtomicReference
Платформа и требования к версии: JVM (2.1)
fun <T> AtomicArray<T>.asJavaAtomicArray(): AtomicReferenceArray<T>
Приводит данный экземпляр AtomicArray
fun AtomicIntArray.asJavaAtomicArray(): AtomicIntegerArray
Приводит данный экземпляр AtomicIntArray к типу java.util.concurrent.atomic.AtomicIntegerArray.
fun AtomicLongArray.asJavaAtomicArray(): AtomicLongArray
Приводит данный экземпляр AtomicLongArray к типу java.util.concurrent.atomic.AtomicLongArray.
Платформа и требования к версии: JVM (2.1)
fun AtomicBoolean.asKotlinAtomic(): AtomicBoolean
Приводит данный экземпляр java.util.concurrent.atomic.AtomicBoolean к типу AtomicBoolean.
fun AtomicInteger.asKotlinAtomic(): AtomicInt
Приводит данный экземпляр java.util.concurrent.atomic.AtomicInteger к типу AtomicInt.
fun AtomicLong.asKotlinAtomic(): AtomicLong
Приводит данный экземпляр java.util.concurrent.atomic.AtomicLong к типу AtomicLong.
fun <T> AtomicReference<T>.asKotlinAtomic(): AtomicReference<T>
Приводит данный экземпляр java.util.concurrent.atomic.AtomicReference
Платформа и требования к версии: JVM (2.1)
fun AtomicIntegerArray.asKotlinAtomicArray(): AtomicIntArray
Приводит данный экземпляр java.util.concurrent.atomic.AtomicIntegerArray к типу AtomicIntArray.
fun AtomicLongArray.asKotlinAtomicArray(): AtomicLongArray
Приводит данный экземпляр java.util.concurrent.atomic.AtomicLongArray к типу AtomicLongArray.
fun <T> AtomicReferenceArray<T>.asKotlinAtomicArray(): AtomicArray<T>
Приводит данный экземпляр java.util.concurrent.atomic.AtomicReferenceArray
Платформа и требования к версии: Common (2.1)
inline fun <T> AtomicArray(size: Int, init: (Int) -> T): AtomicArray<T>
Создает новый AtomicArray указанного типа с заданным size, где каждый элемент инициализируется вызовом функции init.
Платформа и требования к версии: Common (2.2)
inline fun <T> atomicArrayOfNulls(size: Int): AtomicArray<T?>
Возвращает новый AtomicArray указанного типа с заданным size, инициализированный значениями null.
Платформа и требования к версии: Common (2.1)
inline fun AtomicIntArray(size: Int, init: (Int) -> Int): AtomicIntArray
Создает новый AtomicIntArray с заданным size, где каждый элемент инициализируется вызовом функции init.
Платформа и требования к версии: Common (2.1)
inline fun AtomicLongArray(size: Int, init: (Int) -> Long): AtomicLongArray
Создает новый AtomicLongArray с заданным size, где каждый элемент инициализируется вызовом функции init.
Платформа и требования к версии: Common (2.1)
fun AtomicInt.decrementAndFetch(): Int
Атомарно уменьшает текущее значение этого AtomicInt на единицу и возвращает новое значение.
fun AtomicLong.decrementAndFetch(): Long
Атомарно уменьшает текущее значение этого AtomicLong на единицу и возвращает новое значение.
Платформа и требования к версии: Common (2.1)
fun AtomicIntArray.decrementAndFetchAt(index: Int): Int
Атомарно уменьшает элемент этого AtomicIntArray по заданному index на единицу и возвращает новое значение элемента.
fun AtomicLongArray.decrementAndFetchAt(index: Int): Long
Атомарно уменьшает элемент этого AtomicLongArray по заданному index на единицу и возвращает новое значение элемента.
Платформа и требования к версии: Common (2.1)
fun AtomicInt.fetchAndDecrement(): Int
Атомарно уменьшает текущее значение этого AtomicInt на единицу и возвращает старое значение.
fun AtomicLong.fetchAndDecrement(): Long
Атомарно уменьшает текущее значение этого AtomicLong на единицу и возвращает старое значение.
Платформа и требования к версии: Common (2.1)
fun AtomicIntArray.fetchAndDecrementAt(index: Int): Int
Атомарно уменьшает элемент этого AtomicIntArray по заданному index на единицу и возвращает старое значение элемента.
fun AtomicLongArray.fetchAndDecrementAt(index: Int): Long
Атомарно уменьшает элемент этого AtomicLongArray по заданному index на единицу и возвращает старое значение элемента.
Платформа и требования к версии: Common (2.1)
fun AtomicInt.fetchAndIncrement(): Int
Атомарно увеличивает текущее значение этого AtomicInt на единицу и возвращает старое значение.
fun AtomicLong.fetchAndIncrement(): Long
Атомарно увеличивает текущее значение этого AtomicLong на единицу и возвращает старое значение.
Платформа и требования к версии: Common (2.1)
fun AtomicIntArray.fetchAndIncrementAt(index: Int): Int
Атомарно увеличивает элемент этого AtomicIntArray по заданному index на единицу и возвращает старое значение элемента.
fun AtomicLongArray.fetchAndIncrementAt(index: Int): Long
Атомарно увеличивает элемент этого AtomicLongArray по заданному index на единицу и возвращает старое значение элемента.
Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)
expect inline fun AtomicInt.fetchAndUpdate(transform: (Int) -> Int): Int
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
expect inline fun AtomicLong.fetchAndUpdate(transform: (Long) -> Long): Long
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
expect inline fun <T> AtomicReference<T>.fetchAndUpdate(transform: (T) -> T): T
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
Платформа и требования к версии: Native (2.2)
actual inline fun AtomicInt.fetchAndUpdate(transform: (Int) -> Int): Int
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
actual inline fun AtomicLong.fetchAndUpdate(transform: (Long) -> Long): Long
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
inline fun AtomicNativePtr.fetchAndUpdate(transform: (NativePtr) -> NativePtr): NativePtr
Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
actual inline fun <T> AtomicReference<T>.fetchAndUpdate(transform: (T) -> T): T
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.
Начиная с Kotlin: 2.2
expect inline fun <T> AtomicArray<T>.fetchAndUpdateAt(index: Int, transform: (T) -> T): T
expect inline fun AtomicLongArray.fetchAndUpdateAt(index: Int, transform: (Long) -> Long): Long
Атомарно обновляет элемент этого AtomicLongArray по заданному индексу с помощью функции transform и возвращает старое значение элемента.
expect inline fun AtomicIntArray.fetchAndUpdateAt(index: Int, transform: (Int) -> Int): Int
Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform и возвращает старое значение элемента.
Платформа и требования к версии: Common (2.1)
fun AtomicInt.incrementAndFetch(): Int
Атомарно увеличивает текущее значение этого AtomicInt на единицу и возвращает новое значение.
fun AtomicLong.incrementAndFetch(): Long
Атомарно увеличивает текущее значение этого AtomicLong на единицу и возвращает новое значение.
Платформа и требования к версии: Common (2.1)
fun AtomicIntArray.incrementAndFetchAt(index: Int): Int
Атомарно увеличивает элемент этого AtomicIntArray по заданному index на единицу и возвращает новое значение элемента.
fun AtomicLongArray.incrementAndFetchAt(index: Int): Long
Атомарно увеличивает элемент этого AtomicLongArray по заданному index на единицу и возвращает новое значение элемента.
Платформа и требования к версии: Common (2.1)
operator fun AtomicInt.minusAssign(delta: Int)
Атомарно вычитает заданное значение из текущего значения этого AtomicInt.
operator fun AtomicLong.minusAssign(delta: Long)
Атомарно вычитает заданное значение из текущего значения этого AtomicLong.
Платформа и требования к версии: Common (2.1)
operator fun AtomicInt.plusAssign(delta: Int)
Атомарно прибавляет заданное значение к текущему значению этого AtomicInt.
operator fun AtomicLong.plusAssign(delta: Long)
Атомарно прибавляет заданное значение к текущему значению этого AtomicLong.
Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)
expect inline fun AtomicInt.update(transform: (Int) -> Int)
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения.
expect inline fun AtomicLong.update(transform: (Long) -> Long)
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения.
expect inline fun <T> AtomicReference<T>.update(transform: (T) -> T)
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения.
Платформа и требования к версии: Native (2.2)
actual inline fun AtomicInt.update(transform: (Int) -> Int)
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения.
actual inline fun AtomicLong.update(transform: (Long) -> Long)
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения.
inline fun AtomicNativePtr.update(transform: (NativePtr) -> NativePtr)
Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения.
actual inline fun <T> AtomicReference<T>.update(transform: (T) -> T)
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения.
Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)
expect inline fun AtomicInt.updateAndFetch(transform: (Int) -> Int): Int
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
expect inline fun AtomicLong.updateAndFetch(transform: (Long) -> Long): Long
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
expect inline fun <T> AtomicReference<T>.updateAndFetch(transform: (T) -> T): T
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
Платформа и требования к версии: Native (2.2)
actual inline fun AtomicInt.updateAndFetch(transform: (Int) -> Int): Int
Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
actual inline fun AtomicLong.updateAndFetch(transform: (Long) -> Long): Long
Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
inline fun AtomicNativePtr.updateAndFetch(transform: (NativePtr) -> NativePtr): NativePtr
Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
actual inline fun <T> AtomicReference<T>.updateAndFetch(transform: (T) -> T): T
Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.
Начиная с Kotlin: 2.2
expect inline fun <T> AtomicArray<T>.updateAndFetchAt(index: Int, transform: (T) -> T): T
Атомарно обновляет элемент этого AtomicArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.
expect inline fun AtomicIntArray.updateAndFetchAt(index: Int, transform: (Int) -> Int): Int
Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.
expect inline fun AtomicLongArray.updateAndFetchAt(index: Int, transform: (Long) -> Long): Long
Атомарно обновляет элемент этого AtomicLongArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.
Начиная с Kotlin: 2.2
expect inline fun <T> AtomicArray<T>.updateAt(index: Int, transform: (T) -> T)
Атомарно обновляет элемент этого AtomicArray по заданному индексу с помощью функции transform.
expect inline fun AtomicIntArray.updateAt(index: Int, transform: (Int) -> Int)
Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform.
expect inline fun AtomicLongArray.updateAt(index: Int, transform: (Long) -> Long)
Атомарно обновляет элемент этого AtomicLongArray по заданному индексу с помощью функции transform.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.concurrent.atomics/index.html