#[repr(C)]pub struct k_work_queue_config {
pub name: *const u8,
pub no_yield: bool,
pub essential: bool,
pub work_timeout_ms: u32,
}
Expand description
@brief A structure holding optional configuration items for a work queue.
This structure, and values it references, are not retained by k_work_queue_start().
Fields§
§name: *const u8
The name to be given to the work queue thread.
If left null the thread will not have a name.
no_yield: bool
Control whether the work queue thread should yield between items.
Yielding between items helps guarantee the work queue thread does not starve other threads, including cooperative ones released by a work item. This is the default behavior.
Set this to @c true to prevent the work queue thread from yielding between items. This may be appropriate when a sequence of items should complete without yielding control.
essential: bool
Control whether the work queue thread should be marked as essential thread.
work_timeout_ms: u32
Controls whether work queue monitors work timeouts.
If non-zero, and CONFIG_WORKQUEUE_WORK_TIMEOUT is enabled, the work queue will monitor the duration of each work item. If the work item handler takes longer than the specified time to execute, the work queue thread will be aborted, and an error will be logged if CONFIG_LOG is enabled.