From 6d5cc0354c888c27cbaa10e550215c6b42faeab9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20W=C3=B6rner?= Date: Fri, 31 Mar 2017 10:23:42 +0200 Subject: [PATCH] fixed read, code clean uo --- V1/led5/src/main.rs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/V1/led5/src/main.rs b/V1/led5/src/main.rs index 9cbf698..07dab86 100644 --- a/V1/led5/src/main.rs +++ b/V1/led5/src/main.rs @@ -32,9 +32,7 @@ fn write(path: &str, value: &str) { #[cfg(debug_assertions)] println!("Wrote value '{}' to '{}'.", value, path); } - fn read(path: &str) -> String { - return String::new(); let mut file = File::open(Path::new(path)) .expect(format!("Open file '{}' failed", path).as_str()); let mut contents = String::new(); @@ -62,7 +60,6 @@ fn set_direction(port: &str, direction: &str) { fn set_value(port: &str, value: &str) { write(format!("/sys/class/gpio/gpio{}/value", port).as_str(), value); } - fn get_value(port: &str) -> String { read(format!("/sys/class/gpio/gpio{}/value", port).as_str()) } @@ -70,11 +67,14 @@ fn get_value(port: &str) -> String { fn main() { let signal = chan_signal::notify(&[Signal::INT, Signal::TERM]); let (sdone, rdone) = chan::sync(0); - let worker = thread::spawn(move || run(rdone)); + let worker = thread::Builder::new() + .name("worker".to_string()) + .spawn(move || run(rdone)) + .expect("Create worker thread failed"); chan_select! { default => { - worker.join(); + worker.join().expect("Worker thread paniced"); }, signal.recv() -> signal => { #[cfg(debug_assertions)] @@ -84,6 +84,7 @@ fn main() { } } } + fn run(rdone: chan::Receiver<()>) { // init export(GPIO_PORT_BTN);