Skip to content
io_uring wrapper for C# / .NET
C#
Branch: master
Clone or download

Latest commit

Latest commit 602c3e7 Feb 26, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows Add basic CI/CD again Feb 18, 2020
src/IoUring Cleanup and add benchmark Feb 26, 2020
tests Cleanup and add benchmark Feb 26, 2020
.gitignore Use io_uring to poll for possible accepts Jan 22, 2020
IoUring.sln Cleanup and add benchmark Feb 26, 2020
LICENSE Move IoUring.Transport to separate repository Feb 23, 2020
README.md Update README.md Feb 23, 2020
nuget.config Move IoUring.Transport to separate repository Feb 23, 2020

README.md

⚠️ The IoUring.Transport subproject lives in it's own repositrory now: tkp1n/IoUring.Transport

IoUring

C# wrapper for io_uring. This library fulfills the same purpose as the native liburing, by which it is heavily inspired. The primary goal of this library is to bring io_uring to all systems supporting it, also the ones without liburing pre-installed.

Setting proper resource limits (RLIMIT_MEMLOCK)

If ulimit -l returns something along the lines of 64K, adjustments should be made. It's simplest (although not smartest) to set memlock to unlimited in limits.conf (e.g. Ubuntu), to set DefaultLimitMEMLOCK=infinity in systemd config (e.g. Clear Linux*), or to do the equivalent for your distro...

Try it out

Add the following MyGet feed to your nuget.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="myget-tkp1n" value="https://www.myget.org/F/tkp1n/api/v3/index.json" />
  </packageSources>
</configuration>
You can’t perform that action at this time.