Crates.io | flock |
lib.rs | flock |
version | 0.2.0 |
source | src |
created_at | 2017-03-03 21:06:41.24215 |
updated_at | 2017-03-16 11:14:40.720557 |
description | Parallel runner for asynchronous tasks. |
homepage | |
repository | https://github.com/HyeonuPark/Flock |
max_upload_size | |
id | 8796 |
size | 16,432 |
Flock is a parallel runner for asynchronous tasks.
Imagine JavaScript, with lots of ES2017 async functions. If we can assume that every values shared between function calls are immutable, those functions can effectively be executed in separate thread so we can highly utilize modern multicore processors for (almost) free.
This is what exactly I want to achieve with Flock. Coroutines(tasks) are distributed across fixed amount of worker threads, and single central event loop feed them all. Tasks can be moved between workers while paused, so all workers can always stay busy while active tasks remain.
v0.2
Every core concepts are implemented.
Implement cancelable stream
Implement main thread bound task
Gather some user feedback