From 4733afa6c2c2b41d70b2d76748b4feb374b0ba77 Mon Sep 17 00:00:00 2001 From: Blaž Hrastnik Date: Tue, 11 Aug 2020 23:19:23 +0900 Subject: Update dependencies. smol 0.3 makes setup a whole lot easier. --- helix-term/src/editor.rs | 27 +-------------------------- helix-term/src/line.rs | 27 +-------------------------- helix-term/src/test.rs | 28 ++-------------------------- 3 files changed, 4 insertions(+), 78 deletions(-) (limited to 'helix-term/src') diff --git a/helix-term/src/editor.rs b/helix-term/src/editor.rs index 889eaa4c..11ae9695 100644 --- a/helix-term/src/editor.rs +++ b/helix-term/src/editor.rs @@ -144,35 +144,10 @@ impl Editor { execute!(stdout, terminal::EnterAlternateScreen)?; - use std::thread; - - // Same number of threads as there are CPU cores. - let num_threads = num_cpus::get().max(1); - - // A channel that sends the shutdown signal. - let (s, r) = piper::chan::<()>(0); - let mut threads = Vec::new(); - - // Create an executor thread pool. - for _ in 0..num_threads { - // Spawn an executor thread that waits for the shutdown signal. - let r = r.clone(); - threads.push(thread::spawn(move || smol::run(r.recv()))); - } - - // No need to `run()`, now we can just block on the main future. - smol::block_on(self.print_events()); - - // Send a shutdown signal. - drop(s); + smol::run(self.print_events()); execute!(stdout, terminal::LeaveAlternateScreen)?; - // Wait for threads to finish. - for t in threads { - t.join().unwrap(); - } - disable_raw_mode()?; Ok(()) diff --git a/helix-term/src/line.rs b/helix-term/src/line.rs index 58d4c9d8..b4b88655 100644 --- a/helix-term/src/line.rs +++ b/helix-term/src/line.rs @@ -64,32 +64,7 @@ fn main() -> Result<()> { let mut stdout = stdout(); execute!(stdout, EnableMouseCapture)?; - use std::thread; - - // Same number of threads as there are CPU cores. - let num_threads = num_cpus::get().max(1); - - // A channel that sends the shutdown signal. - let (s, r) = piper::chan::<()>(0); - let mut threads = Vec::new(); - - // Create an executor thread pool. - for _ in 0..num_threads { - // Spawn an executor thread that waits for the shutdown signal. - let r = r.clone(); - threads.push(thread::spawn(move || smol::run(r.recv()))); - } - - // No need to `run()`, now we can just block on the main future. - smol::block_on(print_events()); - - // Send a shutdown signal. - drop(s); - - // Wait for threads to finish. - for t in threads { - t.join().unwrap(); - } + smol::run(print_events()); execute!(stdout, DisableMouseCapture)?; diff --git a/helix-term/src/test.rs b/helix-term/src/test.rs index 12b4f377..181a3ee0 100644 --- a/helix-term/src/test.rs +++ b/helix-term/src/test.rs @@ -42,7 +42,7 @@ async fn print_events() { if event == Event::Key(KeyCode::Char('c').into()) { println!("Cursor position: {:?}\r", position()); - + } println!("test"); @@ -67,32 +67,8 @@ fn main() -> Result<()> { let mut stdout = stdout(); execute!(stdout, EnableMouseCapture)?; - use std::thread; - - // Same number of threads as there are CPU cores. - let num_threads = num_cpus::get().max(1); - - // A channel that sends the shutdown signal. - let (s, r) = piper::chan::<()>(0); - let mut threads = Vec::new(); - - // Create an executor thread pool. - for _ in 0..num_threads { - // Spawn an executor thread that waits for the shutdown signal. - let r = r.clone(); - threads.push(thread::spawn(move || smol::run(r.recv()))); - } - // No need to `run()`, now we can just block on the main future. - smol::block_on(print_events()); - - // Send a shutdown signal. - drop(s); - - // Wait for threads to finish. - for t in threads { - t.join().unwrap(); - } + smol::run(print_events()); execute!(stdout, DisableMouseCapture)?; -- cgit v1.2.3-70-g09d2