tickbh / Td_revent
Licence: other
tickdream rust event - Async IO similar to libevent
Stars: β 9
Programming Languages
rust
11053 projects
Labels
Projects that are alternatives of or similar to Td revent
Hivemind
Decentralized deep learning in PyTorch. Built to train models on thousands of volunteers across the world.
Stars: β 661 (+7244.44%)
Mutual labels: asyncio
Httpx
A next generation HTTP client for Python. π¦
Stars: β 8,052 (+89366.67%)
Mutual labels: asyncio
Aiomixcloud
Mixcloud API wrapper for Python and Async IO
Stars: β 23 (+155.56%)
Mutual labels: asyncio
Arq
Fast job queuing and RPC in python with asyncio and redis.
Stars: β 695 (+7622.22%)
Mutual labels: asyncio
Nonocaptcha
An asynchronized Python library to automate solving ReCAPTCHA v2 using audio
Stars: β 744 (+8166.67%)
Mutual labels: asyncio
Lofty
Coroutines, stack traces and smart I/O for C++11, inspired by Python and Golang.
Stars: β 5 (-44.44%)
Mutual labels: asyncio
Pytradfri
IKEA TrΓ₯dfri/Tradfri API. Control and observe your lights from Python. Examples available. On pypi. Sans-io.
Stars: β 778 (+8544.44%)
Mutual labels: asyncio
Sphinxcontrib Asyncio
Sphinx extension to add asyncio-specific markups
Stars: β 19 (+111.11%)
Mutual labels: asyncio
Python Proxy
HTTP/HTTP2/HTTP3/Socks4/Socks5/Shadowsocks/ShadowsocksR/SSH/Redirect/Pf TCP/UDP asynchronous tunnel proxy implemented in Python 3 asyncio.
Stars: β 692 (+7588.89%)
Mutual labels: asyncio
Fastapi Users
Ready-to-use and customizable users management for FastAPI
Stars: β 713 (+7822.22%)
Mutual labels: asyncio
Async Reduce
Reducer for similar simultaneously coroutines
Stars: β 17 (+88.89%)
Mutual labels: asyncio
Hbmqtt
MQTT client/broker using Python asynchronous I/O
Stars: β 667 (+7311.11%)
Mutual labels: asyncio
Cryptofeed
Cryptocurrency Exchange Websocket Data Feed Handler
Stars: β 643 (+7044.44%)
Mutual labels: asyncio
Event - Async IO similar to libevent
Event is a lightweight IO library for Rust with a focus on adding as little overhead as possible over the OS abstractions.
Getting started guide Currently a work in progress:
##Usage
To use td_revent, first add this to your Cargo.toml:
[dependencies]
td_revent = "0.1.1"
Then, add this to your crate root:
extern crate td_revent;
Add empty event just do
extern crate td_revent;
use td_revent::EventLoop;
fn main() {
let mut event_loop = EventLoop::new().unwrap();
event_loop.run();
}
Add simple timer event just do
extern crate td_revent;
use td_revent::{EventLoop, EventEntry, EventFlags};
use std::ptr;
fn time_callback(ev : &mut EventLoop, fd : u64, _ : EventFlags, data : *mut ()) -> i32 {
println!("fd is {:?}", fd);
//return 0 status ok other will delete the timer
0
}
pub fn main() {
let mut event_loop : EventLoop = EventLoop::new().unwrap();
event_loop.add_timer(EventEntry::new_timer(100, false, Some(time_callback), None));
event_loop.add_timer(EventEntry::new_timer(200, true, Some(time_callback), None));
event_loop.run().unwrap();
}
##Features
Event loop backed by epoll, windows by select. Non-blocking TCP sockets High performance timer system
##Platforms Currently, td_revent only supports Linux and Windows. The goal is to support all platforms that support Rust and the readiness IO model.
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].