From e8eca4be37a2fe1af25b203ace5e99b31fcc3972 Mon Sep 17 00:00:00 2001 From: Emil Fresk Date: Thu, 22 Oct 2020 21:36:32 +0200 Subject: Now all locks are symmetric Test fixes Fix test Fix comment --- examples/resource.rs | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'examples/resource.rs') diff --git a/examples/resource.rs b/examples/resource.rs index 87ba3367..d86d46fb 100644 --- a/examples/resource.rs +++ b/examples/resource.rs @@ -42,18 +42,23 @@ mod app { // `shared` can be accessed from this context #[task(binds = UART0, resources = [shared])] - fn uart0(cx: uart0::Context) { - let shared: &mut u32 = cx.resources.shared; - *shared += 1; + fn uart0(mut cx: uart0::Context) { + let shared = cx.resources.shared.lock(|shared| { + *shared += 1; + *shared + }); hprintln!("UART0: shared = {}", shared).unwrap(); } // `shared` can be accessed from this context #[task(binds = UART1, resources = [shared])] - fn uart1(cx: uart1::Context) { - *cx.resources.shared += 1; + fn uart1(mut cx: uart1::Context) { + let shared = cx.resources.shared.lock(|shared| { + *shared += 1; + *shared + }); - hprintln!("UART1: shared = {}", cx.resources.shared).unwrap(); + hprintln!("UART1: shared = {}", shared).unwrap(); } } -- cgit v1.2.3