pub struct WorkerChannelEndpoints {
pub worker_id: WorkerId,
pub page_to_worker_rx: Option<Receiver<StructuredClonePayload>>,
pub worker_to_page_tx: Option<Sender<WorkerStructuredMessage>>,
}Expand description
Channel endpoints sent to the Worker thread.
The worker thread owns the receiving end of the page→worker channel
and the sending end of the worker→page channel. These are Send
safe because they only carry serialized bytes, not JSObject refs.
@trace REQ-BRW-004 [entity:Worker] [entity:DedicatedWorkerGlobalScope] [criterion:6] DF-WK-4 / DF-WK-5
Fields§
§worker_id: WorkerIdWorker ID this endpoint belongs to.
page_to_worker_rx: Option<Receiver<StructuredClonePayload>>Worker thread receives page→worker messages (DF-WK-4). @trace REQ-BRW-004 [entity:Worker] DF-WK-4
worker_to_page_tx: Option<Sender<WorkerStructuredMessage>>Worker thread sends worker→page messages (DF-WK-5). @trace REQ-BRW-004 [entity:DedicatedWorkerGlobalScope] DF-WK-5
Auto Trait Implementations§
impl !Sync for WorkerChannelEndpoints
impl Freeze for WorkerChannelEndpoints
impl RefUnwindSafe for WorkerChannelEndpoints
impl Send for WorkerChannelEndpoints
impl Unpin for WorkerChannelEndpoints
impl UnsafeUnpin for WorkerChannelEndpoints
impl UnwindSafe for WorkerChannelEndpoints
Blanket Implementations§
Source§impl<T> AsCtxPtr for Twhere
T: ?Sized,
impl<T> AsCtxPtr for Twhere
T: ?Sized,
Source§fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
self’s address as *mut Self for deferred-task / scopeguard /
ref_guard ctx slots. The closures/trampolines deref it as shared
(&*p) — every method they reach is &self post-R-2, so no write
provenance is required; the *mut spelling is purely to match the
existing DerefOnDrop / HasAutoFlush / RefCount ABI.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert