Mojo struct
WaitAndAdvanceContext
@register_passable(trivial)
struct WaitAndAdvanceContext[work_origin: MutOrigin]
Context for waiting on CLC barrier and advancing work iterator.
Encapsulates the CLC response barrier synchronization:
- Construction: Waits for CLC response, fetches next work
- enter: Returns current work_info for processing
- exit: Assigns fetched work as current
Usage: with work_iter.wait_and_advance() as current: # current is the work item to process NOW process(current) # After exit, work_iter.work_info is the NEXT work item
Fields
- work_info_ptr (
Pointer[WorkInfo, work_origin]): - next_work (
WorkInfo):
Implemented traits
AnyType,
Copyable,
ImplicitlyCopyable,
ImplicitlyDestructible,
Movable
comptime members
__copyinit__is_trivial
comptime __copyinit__is_trivial = True
__del__is_trivial
comptime __del__is_trivial = True
__moveinit__is_trivial
comptime __moveinit__is_trivial = True
Methods
__init__
__init__(work_info_ptr: Pointer[WorkInfo, work_origin], next_work: WorkInfo) -> Self
__enter__
__exit__
__exit__(mut self)
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!