diff options
Diffstat (limited to 'helix-term/src/editor.rs')
-rw-r--r-- | helix-term/src/editor.rs | 27 |
1 files changed, 1 insertions, 26 deletions
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(()) |