Spec-Zone.ru › Kotlin 1.8

write

kotlin-stdlib / kotlin.concurrent / java.util.concurrent.locks.ReentrantReadWriteLock / write
Требования к платформе и версии: JVM (1.0)
inline fun <T> ReentrantReadWriteLock.write(
    action: () -> T
): T

Выполняет заданное действие под записью блокировки этого замка.

Функция выполняет повышение приоритета с чтения на запись, если это необходимо, но такое повышение не является атомарным, поскольку такая модернизация не поддерживается ReentrantReadWriteLock. Для выполнения такого повышения эта функция сначала освобождает все блокировки чтения, удерживаемые этим потоком, затем приобретает блокировку записи и после освобождения ее снова приобретает блокировки чтения.

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

Возвращает результат действия.

© 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.concurrent/java.util.concurrent.locks.-reentrant-read-write-lock/write.html

Spec-Zone.ru

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