Features
-
Provided an API allowing direct access to Buffer and Segment internals #135, #166
The API is unsafe, delisted from public docs and requires explicit opt-in. It's recommended to avoid this API unless you're working on integration with other APIs (like,
java.nio
orio_uring
, for example). -
Improved the way segment pooling is working on JVM #352
Now sharing a segment won't make an original segment and all its copies recyclable. Instead, the last remaining copy will be placed back into the pool when recycled.
Segments are no longer allocated or lost when taking or recycling a segment from a pool under a high contention due to concurrent requests.
The size of the segment pool on the JVM could now be statically configured by setting a system propertykotlinx.io.pool.size.bytes
.
Thanks to @bjhham, @e5l, @lppedd, @qwwdfsad, @shanshin, and @whyoleg for their participation in this release release!