diff options
Diffstat (limited to 'core/ops.rs')
-rw-r--r-- | core/ops.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/core/ops.rs b/core/ops.rs index 5f1bf67ef..b766eb60d 100644 --- a/core/ops.rs +++ b/core/ops.rs @@ -10,6 +10,7 @@ use crate::OpDecl; use crate::OpsTracker; use anyhow::Error; use futures::future::MaybeDone; +use futures::task::AtomicWaker; use futures::Future; use futures::FutureExt; use pin_project::pin_project; @@ -21,6 +22,7 @@ use std::pin::Pin; use std::ptr::NonNull; use std::rc::Rc; use std::rc::Weak; +use std::sync::Arc; use v8::fast_api::CFunctionInfo; use v8::fast_api::CTypeInfo; @@ -184,6 +186,7 @@ pub struct OpState { pub tracker: OpsTracker, pub last_fast_op_error: Option<AnyError>, pub(crate) gotham_state: GothamState, + pub waker: Arc<AtomicWaker>, } impl OpState { @@ -194,6 +197,7 @@ impl OpState { gotham_state: Default::default(), last_fast_op_error: None, tracker: OpsTracker::new(ops_count), + waker: Arc::new(AtomicWaker::new()), } } |