mirror of
https://github.com/denoland/deno.git
synced 2025-09-26 12:19:12 +00:00
refactor: remove run_worker_loop (#4028)
* remove run_worker_loop, impl poll for WebWorker * store JoinHandle to worker thread
This commit is contained in:
parent
08dcf6bff7
commit
3d5bed35e0
6 changed files with 117 additions and 126 deletions
|
@ -3,10 +3,9 @@ use super::compiler_worker::CompilerWorker;
|
|||
use crate::compilers::CompiledModule;
|
||||
use crate::file_fetcher::SourceFile;
|
||||
use crate::global_state::GlobalState;
|
||||
use crate::ops::worker_host::run_worker_loop;
|
||||
use crate::startup_data;
|
||||
use crate::state::*;
|
||||
use crate::tokio_util::create_basic_runtime;
|
||||
use crate::tokio_util;
|
||||
use crate::worker::WorkerEvent;
|
||||
use crate::worker::WorkerHandle;
|
||||
use deno_core::Buf;
|
||||
|
@ -123,11 +122,10 @@ async fn execute_in_thread(
|
|||
let builder =
|
||||
std::thread::Builder::new().name("deno-wasm-compiler".to_string());
|
||||
let join_handle = builder.spawn(move || {
|
||||
let mut worker = WasmCompiler::setup_worker(global_state);
|
||||
let worker = WasmCompiler::setup_worker(global_state);
|
||||
handle_sender.send(Ok(worker.thread_safe_handle())).unwrap();
|
||||
drop(handle_sender);
|
||||
let mut rt = create_basic_runtime();
|
||||
run_worker_loop(&mut rt, &mut worker).expect("Panic in event loop");
|
||||
tokio_util::run_basic(worker).expect("Panic in event loop");
|
||||
})?;
|
||||
let mut handle = handle_receiver.recv().unwrap()?;
|
||||
handle.post_message(req).await?;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue