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
Выполняет предоставленный блок под блокировкой с исходным буфером данных. Блок выполняется под блокировкой spinlock и должен быть коротким.
fun <R> withBufferLocked( block: (array: ByteArray, dataSize: Int) -> R ): R
withPointerLocked
Выполняет предоставленный блок под блокировкой с исходным указателем на данные, хранящиеся в буфере. Блок выполняется под блокировкой spinlock и должен быть коротким.
fun <R> withPointerLocked( block: (COpaquePointer, dataSize: Int) -> R ): R
© 2010–2020 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