All Projects → firenero → AsyncIO

firenero / AsyncIO

Licence: MIT license
.NET library for handling asynchronous file system operations

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to AsyncIO

Purerpc
Asynchronous pure Python gRPC client and server implementation supporting asyncio, uvloop, curio and trio
Stars: ✭ 125 (+525%)
Mutual labels:  asynchronous, asyncio
Aiosmtplib
asyncio smtplib implementation
Stars: ✭ 200 (+900%)
Mutual labels:  asynchronous, asyncio
Kubernetes asyncio
Python asynchronous client library for Kubernetes http://kubernetes.io/
Stars: ✭ 147 (+635%)
Mutual labels:  asynchronous, asyncio
Aiormq
Pure python AMQP 0.9.1 asynchronous client library
Stars: ✭ 112 (+460%)
Mutual labels:  asynchronous, asyncio
duckpy
A simple Python library for searching on DuckDuckGo.
Stars: ✭ 20 (+0%)
Mutual labels:  asynchronous, asyncio
Tornado Sqlalchemy
SQLAlchemy support for Tornado
Stars: ✭ 112 (+460%)
Mutual labels:  asynchronous, asyncio
Paco
Small utility library for coroutine-driven asynchronous generic programming in Python 3.4+
Stars: ✭ 198 (+890%)
Mutual labels:  asynchronous, asyncio
Beanie
Micro ODM for MongoDB
Stars: ✭ 56 (+180%)
Mutual labels:  asynchronous, asyncio
async retrial
Python package for retrial of asyncio based coroutines
Stars: ✭ 14 (-30%)
Mutual labels:  asynchronous, asyncio
socketwrapper
Async/Sync networking library including UDP, TCP and TLS/TCP socket classes written in C++ 17.
Stars: ✭ 33 (+65%)
Mutual labels:  asynchronous, asyncio
Backoff
Python library providing function decorators for configurable backoff and retry
Stars: ✭ 1,670 (+8250%)
Mutual labels:  asynchronous, asyncio
aioconnectors
Simple secure asynchronous message queue
Stars: ✭ 17 (-15%)
Mutual labels:  asynchronous, asyncio
Peony Twitter
An asynchronous Twitter API client for Python 3.5+
Stars: ✭ 62 (+210%)
Mutual labels:  asynchronous, asyncio
Edgedb Python
EdgeDB Python Driver
Stars: ✭ 113 (+465%)
Mutual labels:  asynchronous, asyncio
Vibe Core
Repository for the next generation of vibe.d's core package.
Stars: ✭ 56 (+180%)
Mutual labels:  asynchronous, asyncio
Minotaur
A pythonic, asynchronous, inotify interface
Stars: ✭ 163 (+715%)
Mutual labels:  asynchronous, asyncio
Read Multiple Files
Read multiple files Observable way
Stars: ✭ 13 (-35%)
Mutual labels:  asynchronous, filesystem
Halive
A fast http and https prober, to check which URLs are alive
Stars: ✭ 47 (+135%)
Mutual labels:  asynchronous, asyncio
Aiomisc
aiomisc - miscellaneous utils for asyncio
Stars: ✭ 200 (+900%)
Mutual labels:  asynchronous, asyncio
py3tftp
An asynchronous TFTP server in pure Python 3.5
Stars: ✭ 39 (+95%)
Mutual labels:  asynchronous, asyncio

AsyncIO

AsyncIO is easy-to-use .NET library for common async IO file system operations. Implemented operations are fully asynchronous and do not use threads from thread pool.

AsyncIO provides decent control over async execution (e.g. support of CancellationToken) and provides API for specifying Encoding.

Installation

You can install AsyncIO from nuget.

Also, you can download compiled dll from the releases page.

Usage

AsyncIO is very easy to use especially if you used System.IO.File. There is a static class AsyncFile to access all supported async io operations. You can also use extension methods for System.IO.FileInfo.

Examples

  • Read text from file
var text = await AsyncFile.ReadAllTextAsync("path_to_file");
  • Read text from file with Encoding
var text = await AsyncFile.ReadAllTextAsync("path_to_file", Encoding.UTF8);
  • CancellationToken usage
var tokenSource = new CancellationTokenSource();
try
{
    var moveTask = AsyncFile.MoveAsync("file_source_path", "file_destination_path", tokenSource.Token);
    tokenSource.Cancel();
    await moveTask;
}
catch (OperationCancelledException e)
{
    // Handle cancellation here.
}
var fileInfo = new FileInfo("path_to_file");
var text = await fileInfo.ReadAllTextAsync("path_to_file");

Supported methods

  • AppendAllLinesAsync
  • AppendAllTextAsync
  • CopyAsync
  • DeleteAsync
  • MoveAsync
  • ReadAllBytesAsync
  • ReadAllLinesAsync
  • ReadAllTextAsync
  • WriteAllBytesAsync
  • WriteAllLinesAsync
  • WriteAllTextAsync

Contribution

Issues tracking

  • Feel free to submit issues with or request new features via GitHub Issues.
  • Before asking questions about library usage, please verify that it isn't covered in Usage section.

Pull requests

  • Before creating new pull request, please create a ticket for it.

Licence

Library is distributing under the MIT license. You can see details here.

Roadmap

  1. Implement async analog of File.Replace method.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].