aboutsummaryrefslogtreecommitdiff
path: root/book/en/src/migration/migration_v2/async_tasks.md
diff options
context:
space:
mode:
Diffstat (limited to 'book/en/src/migration/migration_v2/async_tasks.md')
-rw-r--r--book/en/src/migration/migration_v2/async_tasks.md55
1 files changed, 0 insertions, 55 deletions
diff --git a/book/en/src/migration/migration_v2/async_tasks.md b/book/en/src/migration/migration_v2/async_tasks.md
deleted file mode 100644
index 54e0893..0000000
--- a/book/en/src/migration/migration_v2/async_tasks.md
+++ /dev/null
@@ -1,55 +0,0 @@
-# Using `async` softare tasks.
-
-There have been a few changes to software tasks. They are outlined below.
-
-### Software tasks must now be `async`.
-
-All software tasks are now required to be `async`.
-
-#### Required changes.
-
-All of the tasks in your project that do not bind to an interrupt must now be an `async fn`. For example:
-
-``` rust
-#[task(
- local = [ some_resource ],
- shared = [ my_shared_resource ],
- priority = 2
-)]
-fn my_task(cx: my_task::Context) {
- cx.local.some_resource.do_trick();
- cx.shared.my_shared_resource.lock(|s| s.do_shared_thing());
-}
-```
-
-becomes
-
-``` rust
-#[task(
- local = [ some_resource ],
- shared = [ my_shared_resource ],
- priority = 2
-)]
-async fn my_task(cx: my_task::Context) {
- cx.local.some_resource.do_trick();
- cx.shared.my_shared_resource.lock(|s| s.do_shared_thing());
-}
-```
-
-## Software tasks may now run forever
-
-The new `async` software tasks are allowed to run forever, on one precondition: **there must be an `await` within the infinite loop of the task**. An example of such a task:
-
-``` rust
-#[task(local = [ my_channel ] )]
-async fn my_task_that_runs_forever(cx: my_task_that_runs_forever::Context) {
- loop {
- let value = cx.local.my_channel.recv().await;
- do_something_with_value(value);
- }
-}
-```
-
-## `spawn_after` and `spawn_at` have been removed.
-
-As discussed in the [Migrating to `rtic-monotonics`](./monotonics.md) chapter, `spawn_after` and `spawn_at` are no longer available. \ No newline at end of file