MutableData
class MutableData
Буфер данных, доступный для одновременного доступа. Может быть обращён из нескольких рабочих потоков одновременно.
Конструкторы
<init>
Буфер данных, доступный для одновременного доступа. Может быть обращён из нескольких рабочих потоков одновременно.
MutableData(capacity: Int = 16)
Свойства
size
Текущий размер данных, может изменяться в дальнейшем параллельно.
val size: Int
Функции
append
Добавляет данные в буфер.
fun append(data: MutableData)
Добавляет массив байтов в буфер.
fun append( data: ByteArray, fromIndex: Int = 0, toIndex: Int = data.size)
Добавляет данные C в буфер, если data равно null или count не положительно - возвращает.
fun append(data: COpaquePointer?, count: Int)
copyInto
Копирует диапазон изменяемых данных в массив байтов.
fun copyInto( output: ByteArray, destinationIndex: Int, startIndex: Int, endIndex: Int)
get
Получить байт из изменяемых данных.
operator fun get(index: Int): Byte
reset
Сбрасывает буфер данных, делая его размером 0.
fun reset()
withBufferLocked
Выполняет предоставленный блок под блокировкой с исходным буфером данных. Блок выполняется под спин-блокировкой и должен быть коротким.
fun <R> withBufferLocked( block: (array: ByteArray, dataSize: Int) -> R ): R
withPointerLocked
Выполняет предоставленный блок под блокировкой с сырой указателем на данные, хранящиеся в буфере. Блок выполняется под спин-блокировкой и должен быть коротким.
fun <R> withPointerLocked( block: (COpaquePointer, dataSize: Int) -> R ): R
© 2010–2022 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/-mutable-data/index.html