Crates.io | winmsg-executor |
lib.rs | winmsg-executor |
version | 0.2.1 |
source | src |
created_at | 2024-06-12 13:28:08.408535 |
updated_at | 2024-12-01 15:27:57.625722 |
description | Per-thread async rust executor for windows |
homepage | |
repository | https://github.com/timokroeger/winmsg-executor |
max_upload_size | |
id | 1269644 |
size | 43,563 |
winmsg-executor
Per-thread async Rust executor for Windows. Each task is backed by a message-only window. The executor thread runs the native Windows message loop, which dispatches wake messages to the task's window procedure, which polls the task future.
Send
or Sync
is not required for the task future.async-task
Selected by the backend-async-task
cargo feature.
Uses async-task
's task abstraction instead of a window per task to store the future.
Scheduling a task means posting its runnable to the thread's message queue (similar to windows-executor
see below).
Both of the listed crates run one task/future per thread and expose only block_on()
.
Is block_on an executor?
windows-executor
PostThreadMessage()
.PostQuitMessage()
call) when the task future returns.windows-async-rs
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.