Spec-Zone.ru › Kotlin 2

Объявления уровня пакета

kotlin-stdlib/kotlin.concurrent.atomics

Атомарные скалярные типы и типы массивов, а также утилиты для работы с ними.

Типы

AtomicArray

Версия Kotlin начиная с: 2.1

@ExperimentalAtomicApi
expect class AtomicArray<T>

Обобщённый массив объектов, элементы которого можно обновлять атомарно.

AtomicBoolean

Версия Kotlin начиная с: 2.1

@ExperimentalAtomicApi
expect class AtomicBoolean(value: Boolean)

Значение Boolean, которое можно обновлять атомарно.

AtomicInt

Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)

@ExperimentalAtomicApi
expect class AtomicInt(value: Int)

Значение Int, которое можно обновлять атомарно.

Платформы и требования к версиям: Native (2.1)

@ExperimentalAtomicApi
actual class AtomicInt(var value: Int)

Значение Int, которое можно обновлять атомарно.

AtomicIntArray

Версия Kotlin начиная с: 2.1

@ExperimentalAtomicApi
expect class AtomicIntArray

Массив целых чисел, элементы которого можно обновлять атомарно.

AtomicLong

Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)

@ExperimentalAtomicApi
expect class AtomicLong(value: Long)

Значение Long, которое можно обновлять атомарно.

Платформы и требования к версиям: Native (2.1)

@ExperimentalAtomicApi
actual class AtomicLong(var value: Long)

Значение Long, которое можно обновлять атомарно.

AtomicLongArray

Версия Kotlin начиная с: 2.1

@ExperimentalAtomicApi
expect class AtomicLongArray

Массив значений типа Long, элементы которого можно обновлять атомарно.

AtomicNativePtr

Платформы и требования к версиям: Native (2.1)

@ExperimentalAtomicApi
class AtomicNativePtr(var value: NativePtr)

Значение kotlinx.cinterop.NativePtr, которое можно обновлять атомарно.

AtomicReference

Платформы и требования к версиям: Common (2.1), JS (2.1), JVM (2.1), Wasm-JS (2.1), Wasm-WASI (2.1)

@ExperimentalAtomicApi
expect class AtomicReference<T>(value: T)

Ссылка на объект, которую можно обновлять атомарно.

Платформы и требования к версиям: Native (2.1)

@ExperimentalAtomicApi
actual class AtomicReference<T>(var value: T)

Ссылка на объект, которую можно обновлять атомарно.

ExperimentalAtomicApi

Платформы и требования к версиям: Common (2.1)

@RequiresOptIn(level = RequiresOptIn.Level.ERROR)
@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])
annotation class ExperimentalAtomicApi

Эта аннотация обозначает экспериментальный API атомарных операций Kotlin.

Функции

asJavaAtomic

Платформа и требования к версии: JVM (2.1)

@ExperimentalAtomicApi
fun AtomicBoolean.asJavaAtomic(): AtomicBoolean

Приводит данный экземпляр AtomicBoolean к типу java.util.concurrent.atomic.AtomicBoolean.

@ExperimentalAtomicApi
fun AtomicInt.asJavaAtomic(): AtomicInteger

Приводит данный экземпляр AtomicInt к типу java.util.concurrent.atomic.AtomicInteger.

@ExperimentalAtomicApi
fun AtomicLong.asJavaAtomic(): AtomicLong

Приводит данный экземпляр AtomicLong к типу java.util.concurrent.atomic.AtomicLong.

@ExperimentalAtomicApi
fun <T> AtomicReference<T>.asJavaAtomic(): AtomicReference<T>

Приводит данный экземпляр AtomicReference к типу java.util.concurrent.atomic.AtomicReference.

asJavaAtomicArray

Платформа и требования к версии: JVM (2.1)

@ExperimentalAtomicApi
fun <T> AtomicArray<T>.asJavaAtomicArray(): AtomicReferenceArray<T>

Приводит данный экземпляр AtomicArray к типу java.util.concurrent.atomic.AtomicReferenceArray.

@ExperimentalAtomicApi
fun AtomicIntArray.asJavaAtomicArray(): AtomicIntegerArray

Приводит данный экземпляр AtomicIntArray к типу java.util.concurrent.atomic.AtomicIntegerArray.

@ExperimentalAtomicApi
fun AtomicLongArray.asJavaAtomicArray(): AtomicLongArray

Приводит данный экземпляр AtomicLongArray к типу java.util.concurrent.atomic.AtomicLongArray.

asKotlinAtomic

Платформа и требования к версии: JVM (2.1)

@ExperimentalAtomicApi
fun AtomicBoolean.asKotlinAtomic(): AtomicBoolean

Приводит данный экземпляр java.util.concurrent.atomic.AtomicBoolean к типу AtomicBoolean.

@ExperimentalAtomicApi
fun AtomicInteger.asKotlinAtomic(): AtomicInt

Приводит данный экземпляр java.util.concurrent.atomic.AtomicInteger к типу AtomicInt.

@ExperimentalAtomicApi
fun AtomicLong.asKotlinAtomic(): AtomicLong

Приводит данный экземпляр java.util.concurrent.atomic.AtomicLong к типу AtomicLong.

@ExperimentalAtomicApi
fun <T> AtomicReference<T>.asKotlinAtomic(): AtomicReference<T>

Приводит данный экземпляр java.util.concurrent.atomic.AtomicReference к типу AtomicReference.

asKotlinAtomicArray

Платформа и требования к версии: JVM (2.1)

@ExperimentalAtomicApi
fun AtomicIntegerArray.asKotlinAtomicArray(): AtomicIntArray

Приводит данный экземпляр java.util.concurrent.atomic.AtomicIntegerArray к типу AtomicIntArray.

@ExperimentalAtomicApi
fun AtomicLongArray.asKotlinAtomicArray(): AtomicLongArray

Приводит данный экземпляр java.util.concurrent.atomic.AtomicLongArray к типу AtomicLongArray.

@ExperimentalAtomicApi
fun <T> AtomicReferenceArray<T>.asKotlinAtomicArray(): AtomicArray<T>

Приводит данный экземпляр java.util.concurrent.atomic.AtomicReferenceArray к типу AtomicArray.

AtomicArray

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
inline fun <T> AtomicArray(size: Int, init: (Int) -> T): AtomicArray<T>

Создает новый AtomicArray указанного типа с заданным size, где каждый элемент инициализируется вызовом функции init.

atomicArrayOfNulls

Платформа и требования к версии: Common (2.2)

@ExperimentalAtomicApi
inline fun <T> atomicArrayOfNulls(size: Int): AtomicArray<T?>

Возвращает новый AtomicArray указанного типа с заданным size, инициализированный значениями null.

AtomicIntArray

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
inline fun AtomicIntArray(size: Int, init: (Int) -> Int): AtomicIntArray

Создает новый AtomicIntArray с заданным size, где каждый элемент инициализируется вызовом функции init.

AtomicLongArray

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
inline fun AtomicLongArray(size: Int, init: (Int) -> Long): AtomicLongArray

Создает новый AtomicLongArray с заданным size, где каждый элемент инициализируется вызовом функции init.

decrementAndFetch

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicInt.decrementAndFetch(): Int

Атомарно уменьшает текущее значение этого AtomicInt на единицу и возвращает новое значение.

@ExperimentalAtomicApi
fun AtomicLong.decrementAndFetch(): Long

Атомарно уменьшает текущее значение этого AtomicLong на единицу и возвращает новое значение.

decrementAndFetchAt

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicIntArray.decrementAndFetchAt(index: Int): Int

Атомарно уменьшает элемент этого AtomicIntArray по заданному index на единицу и возвращает новое значение элемента.

@ExperimentalAtomicApi
fun AtomicLongArray.decrementAndFetchAt(index: Int): Long

Атомарно уменьшает элемент этого AtomicLongArray по заданному index на единицу и возвращает новое значение элемента.

fetchAndDecrement

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicInt.fetchAndDecrement(): Int

Атомарно уменьшает текущее значение этого AtomicInt на единицу и возвращает старое значение.

@ExperimentalAtomicApi
fun AtomicLong.fetchAndDecrement(): Long

Атомарно уменьшает текущее значение этого AtomicLong на единицу и возвращает старое значение.

fetchAndDecrementAt

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicIntArray.fetchAndDecrementAt(index: Int): Int

Атомарно уменьшает элемент этого AtomicIntArray по заданному index на единицу и возвращает старое значение элемента.

@ExperimentalAtomicApi
fun AtomicLongArray.fetchAndDecrementAt(index: Int): Long

Атомарно уменьшает элемент этого AtomicLongArray по заданному index на единицу и возвращает старое значение элемента.

fetchAndIncrement

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicInt.fetchAndIncrement(): Int

Атомарно увеличивает текущее значение этого AtomicInt на единицу и возвращает старое значение.

@ExperimentalAtomicApi
fun AtomicLong.fetchAndIncrement(): Long

Атомарно увеличивает текущее значение этого AtomicLong на единицу и возвращает старое значение.

fetchAndIncrementAt

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicIntArray.fetchAndIncrementAt(index: Int): Int

Атомарно увеличивает элемент этого AtomicIntArray по заданному index на единицу и возвращает старое значение элемента.

@ExperimentalAtomicApi
fun AtomicLongArray.fetchAndIncrementAt(index: Int): Long

Атомарно увеличивает элемент этого AtomicLongArray по заданному index на единицу и возвращает старое значение элемента.

fetchAndUpdate

Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)

@ExperimentalAtomicApi
expect inline fun AtomicInt.fetchAndUpdate(transform: (Int) -> Int): Int

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

@ExperimentalAtomicApi
expect inline fun AtomicLong.fetchAndUpdate(transform: (Long) -> Long): Long

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

@ExperimentalAtomicApi
expect inline fun <T> AtomicReference<T>.fetchAndUpdate(transform: (T) -> T): T

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

Платформа и требования к версии: Native (2.2)

@ExperimentalAtomicApi
actual inline fun AtomicInt.fetchAndUpdate(transform: (Int) -> Int): Int

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

@ExperimentalAtomicApi
actual inline fun AtomicLong.fetchAndUpdate(transform: (Long) -> Long): Long

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

@ExperimentalAtomicApi
inline fun AtomicNativePtr.fetchAndUpdate(transform: (NativePtr) -> NativePtr): NativePtr

Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

@ExperimentalAtomicApi
actual inline fun <T> AtomicReference<T>.fetchAndUpdate(transform: (T) -> T): T

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает значение, замененное новым.

fetchAndUpdateAt

Начиная с Kotlin: 2.2

@ExperimentalAtomicApi
expect inline fun <T> AtomicArray<T>.fetchAndUpdateAt(index: Int, transform: (T) -> T): T
@ExperimentalAtomicApi
expect inline fun AtomicLongArray.fetchAndUpdateAt(index: Int, transform: (Long) -> Long): Long

Атомарно обновляет элемент этого AtomicLongArray по заданному индексу с помощью функции transform и возвращает старое значение элемента.

@ExperimentalAtomicApi
expect inline fun AtomicIntArray.fetchAndUpdateAt(index: Int, transform: (Int) -> Int): Int

Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform и возвращает старое значение элемента.

incrementAndFetch

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicInt.incrementAndFetch(): Int

Атомарно увеличивает текущее значение этого AtomicInt на единицу и возвращает новое значение.

@ExperimentalAtomicApi
fun AtomicLong.incrementAndFetch(): Long

Атомарно увеличивает текущее значение этого AtomicLong на единицу и возвращает новое значение.

incrementAndFetchAt

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
fun AtomicIntArray.incrementAndFetchAt(index: Int): Int

Атомарно увеличивает элемент этого AtomicIntArray по заданному index на единицу и возвращает новое значение элемента.

@ExperimentalAtomicApi
fun AtomicLongArray.incrementAndFetchAt(index: Int): Long

Атомарно увеличивает элемент этого AtomicLongArray по заданному index на единицу и возвращает новое значение элемента.

minusAssign

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
operator fun AtomicInt.minusAssign(delta: Int)

Атомарно вычитает заданное значение из текущего значения этого AtomicInt.

@ExperimentalAtomicApi
operator fun AtomicLong.minusAssign(delta: Long)

Атомарно вычитает заданное значение из текущего значения этого AtomicLong.

plusAssign

Платформа и требования к версии: Common (2.1)

@ExperimentalAtomicApi
operator fun AtomicInt.plusAssign(delta: Int)

Атомарно прибавляет заданное значение к текущему значению этого AtomicInt.

@ExperimentalAtomicApi
operator fun AtomicLong.plusAssign(delta: Long)

Атомарно прибавляет заданное значение к текущему значению этого AtomicLong.

update

Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)

@ExperimentalAtomicApi
expect inline fun AtomicInt.update(transform: (Int) -> Int)

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения.

@ExperimentalAtomicApi
expect inline fun AtomicLong.update(transform: (Long) -> Long)

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения.

@ExperimentalAtomicApi
expect inline fun <T> AtomicReference<T>.update(transform: (T) -> T)

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения.

Платформа и требования к версии: Native (2.2)

@ExperimentalAtomicApi
actual inline fun AtomicInt.update(transform: (Int) -> Int)

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения.

@ExperimentalAtomicApi
actual inline fun AtomicLong.update(transform: (Long) -> Long)

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения.

@ExperimentalAtomicApi
inline fun AtomicNativePtr.update(transform: (NativePtr) -> NativePtr)

Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения.

@ExperimentalAtomicApi
actual inline fun <T> AtomicReference<T>.update(transform: (T) -> T)

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения.

updateAndFetch

Платформа и требования к версии: Common (2.2), JS (2.2), JVM (2.2), Wasm-JS (2.2), Wasm-WASI (2.2)

@ExperimentalAtomicApi
expect inline fun AtomicInt.updateAndFetch(transform: (Int) -> Int): Int

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

@ExperimentalAtomicApi
expect inline fun AtomicLong.updateAndFetch(transform: (Long) -> Long): Long

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

@ExperimentalAtomicApi
expect inline fun <T> AtomicReference<T>.updateAndFetch(transform: (T) -> T): T

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

Платформа и требования к версии: Native (2.2)

@ExperimentalAtomicApi
actual inline fun AtomicInt.updateAndFetch(transform: (Int) -> Int): Int

Атомарно обновляет значение этого AtomicInt значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

@ExperimentalAtomicApi
actual inline fun AtomicLong.updateAndFetch(transform: (Long) -> Long): Long

Атомарно обновляет значение этого AtomicLong значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

@ExperimentalAtomicApi
inline fun AtomicNativePtr.updateAndFetch(transform: (NativePtr) -> NativePtr): NativePtr

Атомарно обновляет значение этого AtomicNativePtr значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

@ExperimentalAtomicApi
actual inline fun <T> AtomicReference<T>.updateAndFetch(transform: (T) -> T): T

Атомарно обновляет значение этого AtomicReference значением, полученным вызовом функции transform для текущего значения, и возвращает новое значение.

updateAndFetchAt

Начиная с Kotlin: 2.2

@ExperimentalAtomicApi
expect inline fun <T> AtomicArray<T>.updateAndFetchAt(index: Int, transform: (T) -> T): T

Атомарно обновляет элемент этого AtomicArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.

@ExperimentalAtomicApi
expect inline fun AtomicIntArray.updateAndFetchAt(index: Int, transform: (Int) -> Int): Int

Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.

@ExperimentalAtomicApi
expect inline fun AtomicLongArray.updateAndFetchAt(index: Int, transform: (Long) -> Long): Long

Атомарно обновляет элемент этого AtomicLongArray по заданному индексу с помощью функции transform и возвращает обновленное значение элемента.

updateAt

Начиная с Kotlin: 2.2

@ExperimentalAtomicApi
expect inline fun <T> AtomicArray<T>.updateAt(index: Int, transform: (T) -> T)

Атомарно обновляет элемент этого AtomicArray по заданному индексу с помощью функции transform.

@ExperimentalAtomicApi
expect inline fun AtomicIntArray.updateAt(index: Int, transform: (Int) -> Int)

Атомарно обновляет элемент этого AtomicIntArray по заданному индексу с помощью функции transform.

@ExperimentalAtomicApi
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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API