RepackedDoorbell
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:479
The shared word one blocking server loop waits on. Both sides hold the same buffer; a client only ever rings it, and only the host that created it may ask the loop to stop.
Properties
Section titled “Properties”buffer
Section titled “buffer”
readonlybuffer:SharedArrayBuffer
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:480
Methods
Section titled “Methods”requestStop()
Section titled “requestStop()”requestStop():
void
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:521
Ask a blocking serveForever() to return. This is the only way to stop it from another thread:
once inside the loop the server never reaches its own event loop, so postMessage cannot reach it.
Returns
Section titled “Returns”void
resume()
Section titled “resume()”resume():
void
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:527
Undo a requestStop() so the same doorbell can drive another loop.
Returns
Section titled “Returns”void
ring()
Section titled “ring()”ring():
void
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:508
Announce that some channel now holds a request.
Returns
Section titled “Returns”void
running()
Section titled “running()”running():
boolean
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:513
Returns
Section titled “Returns”boolean
ticket()
Section titled “ticket()”ticket():
number
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:503
The value a server must observe BEFORE it scans, so a concurrent request cannot be missed.
Returns
Section titled “Returns”number
wait()
Section titled “wait()”wait(
observed,timeoutMs):"ok"|"not-equal"|"timed-out"
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:532
Block until the ticket leaves observed, or the timeout elapses.
Parameters
Section titled “Parameters”observed
Section titled “observed”number
timeoutMs
Section titled “timeoutMs”number
Returns
Section titled “Returns”"ok" | "not-equal" | "timed-out"
waitAsync()
Section titled “waitAsync()”waitAsync(
observed,timeoutMs):Promise<"ok"|"not-equal"|"timed-out">
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:537
The non-blocking form, for a host that must not park its thread.
Parameters
Section titled “Parameters”observed
Section titled “observed”number
timeoutMs
Section titled “timeoutMs”number
Returns
Section titled “Returns”Promise<"ok" | "not-equal" | "timed-out">
attach()
Section titled “attach()”
staticattach(buffer):RepackedDoorbell
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:498
Rebuild the doorbell around a buffer that arrived over postMessage.
Parameters
Section titled “Parameters”buffer
Section titled “buffer”SharedArrayBuffer
Returns
Section titled “Returns”RepackedDoorbell
create()
Section titled “create()”
staticcreate():RepackedDoorbell
Defined in: packages/pgwasm/src/opfs/broker/protocol.ts:491
Returns
Section titled “Returns”RepackedDoorbell