diff options
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/web_worker.rs | 4 | ||||
-rw-r--r-- | runtime/worker.rs | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/runtime/web_worker.rs b/runtime/web_worker.rs index 9f120539c..23281ad68 100644 --- a/runtime/web_worker.rs +++ b/runtime/web_worker.rs @@ -557,6 +557,8 @@ impl WebWorker { let id = self.preload_module(module_specifier, false).await?; let mut receiver = self.js_runtime.mod_evaluate(id); tokio::select! { + biased; + maybe_result = &mut receiver => { debug!("received module evaluate {:#?}", maybe_result); maybe_result.expect("Module evaluation result not provided.") @@ -579,6 +581,8 @@ impl WebWorker { ) -> Result<(), AnyError> { let mut receiver = self.js_runtime.mod_evaluate(id); tokio::select! { + biased; + maybe_result = &mut receiver => { debug!("received worker module evaluate {:#?}", maybe_result); // If `None` is returned it means that runtime was destroyed before diff --git a/runtime/worker.rs b/runtime/worker.rs index 23fe8e4c0..7165b04f0 100644 --- a/runtime/worker.rs +++ b/runtime/worker.rs @@ -304,6 +304,7 @@ impl MainWorker { ) -> T { loop { tokio::select! { + biased; result = &mut fut => { return result; } |