Skip to main content

Asynchronous file IO for Linux Posix and Wondows.

Project description

Python bindings for Linux AIO API and simple asyncio wrapper.

Example

import asyncio
from linux_aio import AsyncioAIOContext

loop = asyncio.get_event_loop()

async def main():
    # max_requests=128 by default
    ctx = AsyncioAIOContext(max_requests=128)

    with open("test.file", "wb+") as fp:
        fd = fp.fileno()

        # Execute one write operation
        await ctx.write(b"Hello world", fd, offset=0)

        # Execute one read operation
        print(await ctx.read(32, fd, offset=0))

        # Execute one fdsync operation
        await ctx.fdsync(fd)

        op1 = ctx.write(b"Hello from ", fd, offset=0)
        op2 = ctx.write(b"async world", fd, offset=11)

        await asyncio.gather(op1, op2)

        print(await ctx.read(32, fd, offset=0))
        # Hello from async world


loop.run_until_complete(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

caio-0.3.1.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

caio-0.3.1-cp38-cp38-macosx_10_9_x86_64.whl (34.1 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file caio-0.3.1.tar.gz.

File metadata

  • Download URL: caio-0.3.1.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.3

File hashes

Hashes for caio-0.3.1.tar.gz
Algorithm Hash digest
SHA256 7c23470fa7833dcf5fba545201e1f554f2f35a89ccf97a0fcb86e3f1845b70b9
MD5 e0cbb9ee2fc3add195d22bc07dd51e21
BLAKE2b-256 5827cc13d8e96b35d4878372876dd52dfe7b8eb73607ebec0d160dd66029ee17

See more details on using hashes here.

File details

Details for the file caio-0.3.1-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: caio-0.3.1-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 34.1 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.3

File hashes

Hashes for caio-0.3.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 055fb10a76eaa41f15d69f8b8fdddd7614ae2937e248a25ce15311cb1f68bc95
MD5 806b798a31d6dd66f7886fd9ea657755
BLAKE2b-256 4e280ff2f6701c4aeb4b88e5f3839eca26b251883a761ca04544f6d236490d1d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page