Loading...
Searching...
No Matches
oscr::ui_wakeups Struct Reference

Detailed Description

Wake-ups of the UI that an exec node could not send because the edition queue was full. Without them, a value written once (a one-shot update of a control) would wait for a next write that may never come.

Each channel of the node registers how to resend its wake-up, on the UI thread before the node runs; the node calls retry() at each tick, which neither allocates nor locks and does nothing when nothing is parked.

Public Member Functions

void add (std::function< bool()> f)
 UI thread, before the node runs. f returns false when it is still parked.
 
void park () noexcept
 Writer's thread: a channel parked its wake-up.
 
void retry () noexcept
 Writer's thread, at each tick.
 

The documentation for this struct was generated from the following file: