mirror of
https://github.com/rtic-rs/rtic.git
synced 2025-02-24 17:28:38 +01:00

* fix included examples and markdown(book) fixes: #911 * fix footnote pre_init * more example link updates * Restore pool example name * Example: pool: Upgrade to heapless v0.8 * Example: pool: thumbv6 unsupported: wild cfg-if Experiment with multi-backend example contained in the example * Example: lm3s6965: Updated cargo.lock * Book: Use cargo xtask for by-example * Docs: Contributing: cargo xtask --------- Co-authored-by: Henrik Tjäder <henrik@tjaders.com>
722 B
722 B
Message passing & capacity
Software tasks support message passing, this means that software tasks can be spawned
with an argument: foo::spawn(1)
which will run the task foo
with the argument 1
.
Capacity sets the size of the spawn queue for the task. If it is not specified, the capacity defaults to 1.
In the example below, the capacity of task foo
is 3
, allowing three simultaneous
pending spawns of foo
. Exceeding this capacity is an Error
.
The number of arguments to a task is not limited:
{{#include ../../../../examples/message_passing.rs}}
$ cargo xtask qemu --verbose --example message_passing
{{#include ../../../../ci/expected/message_passing.run}}