Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ikorennoy/kuring
Kotlin asynchronous file I/O based on Linux io_uring interface
https://github.com/ikorennoy/kuring
file-io io-uring jvm kotlin kotlin-coroutines
Last synced: about 1 month ago
JSON representation
Kotlin asynchronous file I/O based on Linux io_uring interface
- Host: GitHub
- URL: https://github.com/ikorennoy/kuring
- Owner: ikorennoy
- License: apache-2.0
- Created: 2022-10-05T20:58:24.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2022-10-17T07:05:52.000Z (about 2 years ago)
- Last Synced: 2024-05-22T15:31:17.081Z (7 months ago)
- Topics: file-io, io-uring, jvm, kotlin, kotlin-coroutines
- Language: Java
- Homepage:
- Size: 164 KB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-iouring - kuring
README
# KUring
KUring provides an asynchronous file I/O API based on the Linux io_uring interface.
## KUring Features
* Fully asynchronous io_uring based file I/O API
* API comes in two kinds: Buffered and Direct I/O
* API for linear access to file (depends on your file system)
* Using a wide range of io_uring features such as polling, registered buffers/files## Examples
```kotlin
val executor = EventExecutor.initDefault()
val file = AsyncFile.open(Paths.get("path/to/file"), eventExecutor)
val buffer = ByteBuffer.allocateDirect(1024)
val readBytes = file.read(buffer)
```