fun tryLockForRelease()

in ktor-io/jvm/src/io/ktor/utils/io/internal/RingBufferCapacity.kt [123:130]


    fun tryLockForRelease(): Boolean {
        val AvailableForWrite = AvailableForWrite
        while (true) {
            val remaining = availableForWrite
            if (pendingToFlush > 0 || availableForRead > 0 || remaining != totalCapacity) return false
            if (AvailableForWrite.compareAndSet(this, remaining, 0)) return true
        }
    }