Spec-Zone.ru › Kotlin 1.9

Пакет kotlin.native.concurrent

kotlin-stdlib / kotlin.native.concurrent

Типы

Требования к платформе и версии: Native (1.3)

AtomicInt

Значение типа Int, которое всегда обновляется атомарно. Дополнительные сведения об гарантиях атомарности для чтений и записей см. в kotlin.concurrent.Volatile.

class AtomicInt
Требования к платформе и версии: Native (1.3)

AtomicLong

Значение типа Long, которое всегда обновляется атомарно. Дополнительные сведения об гарантиях атомарности для чтений и записей см. в kotlin.concurrent.Volatile.

class AtomicLong
Требования к платформе и версии: Native (1.3)

AtomicNativePtr

Значение типа kotlinx.cinterop.NativePtr, которое всегда обновляется атомарно. Дополнительные сведения об гарантиях атомарности для чтений и записей см. в kotlin.concurrent.Volatile.

class AtomicNativePtr
Требования к платформе и версии: Native (1.3)

AtomicReference

Ссылка на объект, которая всегда обновляется атомарно.

class AtomicReference<T>
Требования к платформе и версии: Native (1.3)

Continuation0

class Continuation0 : () -> Unit
Требования к платформе и версии: Native (1.3)

Continuation1

class Continuation1<T1> : (T1) -> Unit
Требования к платформе и версии: Native (1.3)

Continuation2

class Continuation2<T1, T2> : (T1, T2) -> Unit
Требования к платформе и версии: Native (1.3)

DetachedObjectGraph

Отделенный граф объектов encapsulates передаваемый отделенный подграф, к которому нельзя получить доступ извне, пока он не будет присоединен с помощью расширяющей функции attach.

class DetachedObjectGraph<T>
Требования к платформе и версии: Native (1.3)

FreezableAtomicReference

Примечание: этот класс полезен только с устаревленным менеджером памяти. Используйте вместо него AtomicReference.

class FreezableAtomicReference<T>
Требования к платформе и версии: Native (1.3)

FreezingException

Исключение, выбрасываемое всякий раз, когда заморозка невозможна.

class FreezingException : RuntimeException
Требования к платформе и версии: Native (1.3)

Future

class Future<T>
Требования к платформе и версии: Native (1.3)

FutureState

Состояние объекта future.

enum class FutureState
Требования к платформе и версии: Native (1.3)

InvalidMutabilityException

Исключение, выбрасываемое всякий раз, когда мы пытаемся изменить замороженные объекты.

class InvalidMutabilityException : RuntimeException
Требования к платформе и версии: Native (1.3)

MutableData

Изменяемый буфер данных, доступный для одновременного доступа. Может быть доступен нескольким работникам одновременно.

class MutableData
Требования к платформе и версии: Native (1.3)

TransferMode

Примечание: современный менеджер памяти Kotlin/Native позволяет обмениваться объектами между потоками без дополнительных церемоний, поэтому TransferMode имеет эффект только в устаревшем менеджере памяти.

enum class TransferMode
Требования к платформе и версии: Native (1.3)

Worker

class Worker
Требования к платформе и версии: Native (1.3)

WorkerBoundReference

Общий доступ к ссылке на объект Kotlin, которая не замораживает ссылаемый объект, когда она сама замораживается.

class WorkerBoundReference<out T : Any>

Аннотации

Требования к платформе и версии: Native (1.9)

ObsoleteWorkersApi

Помечает все API, относящиеся к Worker, как устаревшие.

annotation class ObsoleteWorkersApi
Требования к платформе и версии: Native (1.0)

SharedImmutable

Примечание: эта аннотация действует только в Kotlin/Native с устаревшим менеджером памяти.

annotation class SharedImmutable
Требования к платформе и версии: Native (1.0)

ThreadLocal

Помечает свойство верхнего уровня с базовым полем или объект как локальный для потока. Объект остается изменяемым и можно изменить его состояние, но каждый поток будет иметь отдельную копию этого объекта, поэтому изменения в одном потоке не отражаются в другом.

annotation class ThreadLocal

Свойства

Требования к платформе и версии: Native (1.3)

isFrozen

Проверяет, является ли данный объект null или замороженным или постоянным (т. е. созданным во время компиляции).

val Any?.isFrozen: Boolean

Функции

Требования к платформе и версии: Native (1.3)

atomicLazy

Атомарный ленивый инициализатор, может использоваться в замороженных объектах, замораживает инициализирующий лямбда-выражение, поэтому используйте его очень осторожно. Кроме того, как и при других операциях с AtomicReference, возможно утечка памяти, поэтому рекомендуется использовать atomicLazy в случае объектов, живущих вечно, таких как одиночные объекты, или в тех случаях, когда циклический мусор гарантированно отсутствует.

fun <T> atomicLazy(initializer: () -> T): Lazy<T>
Требования к платформе и версии: Native (1.3)

attach

Присоединяет ранее отсоединённый подграф объектов, созданный с помощью DetachedObjectGraph. Обратите внимание, что после присоединения графа объектов указатель DetachedObjectGraph.stable больше не имеет смысла и должен быть отброшен, поэтому присоединение одного объекта DetachedObjectGraph может произойти только один раз.

fun <T> DetachedObjectGraph<T>.attach(): T
Требования к платформе и версии: Native (1.3)

callContinuation0

fun COpaquePointer.callContinuation0()
Требования к платформе и версии: Native (1.3)

callContinuation1

fun <T1> COpaquePointer.callContinuation1()
Требования к платформе и версии: Native (1.3)

callContinuation2

fun <T1, T2> COpaquePointer.callContinuation2()
Требования к платформе и версии: Native (1.3)

ensureNeverFrozen

Эта функция гарантирует, что если во время попытки заморозки мы видим такой объект, попытка замораживания завершается неудачей, и генерируется исключение FreezingException.

fun Any.ensureNeverFrozen()
Требования к платформе и версии: Native (1.3)

freeze

Замораживает подграф объектов, доступный из этого объекта. Замороженные объекты могут свободно использоваться между потоками/рабочими процессами.

fun <T> T.freeze(): T
Требования к платформе и версии: Native (1.3)

waitForMultipleFutures

fun <T> Collection<Future<T>>.waitForMultipleFutures(
    millis: Int
): Set<Future<T>>
Требования к платформе и версии: Native (1.3)

waitWorkerTermination

fun waitWorkerTermination(worker: Worker)
Требования к платформе и версии: Native (1.3)

withWorker

Выполняет block с новым Worker в качестве ресурса, запуская новый рабочий процесс, вызывая предоставленный block (в текущем контексте) с недавно запущенным рабочим процессом в качестве этого и завершая рабочий процесс после завершения блока. Обратите внимание, что эта операция довольно ресурсоёмкая, используйте предварительно настроенный рабочий процесс или пул рабочих процессов, если вам нужно выполнять её часто.

fun <R> withWorker(
    name: String? = null, 
    errorReporting: Boolean = true, 
    block: Worker.() -> R
): R

© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.native.concurrent/index.html

Spec-Zone.ru

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