加入收藏
举报
02-14 20:02
#0
文件名称:
hdf_workqueue-h.md
所在目录:
Openharmony v1.0 / docs / api / api-SmartVision-Devices
文件大小:
13.18 KB
下载地址:
fenwii/OpenHarmony
   
免责声明:本网站仅提供指向 GitHub 上的文件的链接,所有文件的版权归原作者所有,本网站不对文件内容的合法性、准确性或安全性承担任何责任。
文本预览:
# hdf\_workqueue.h
## **Overview**
**Related Modules:**
[DriverUtils](DriverUtils.md)
**Description:**
Declares work queue structures and interfaces.
This file provides interfaces such as initializing a work queue, a work item, and a delayed work item, adding a work or delayed work item to a work queue, and destroying a work queue, a work item, and a delayed work item. You need to define a work queue, a work item, and a delayed work item, and then call the initialization function to initialize them. The work item, delayed work item, and work queue must be destroyed when they are no longer used.
**Since:**
1.0
**Version:**
1.0
## **Summary**
## Data Structures












Data Structure Name


Description


HdfWork


Describes a work item and a delayed work item. This structure defines the work and delayed work items, and then calls the initialization function HdfWorkInit or HdfDelayedWorkInit to perform initialization. The HdfAddWork() function is to add a work item to a work queue immediately, and the HdfAddDelayedWork() function is to add a work item to a work queue after the configured delayed time.


HdfWorkQueue


Describes a work queue.



## Typedefs









Typedef Name


Description


HdfWorkFunc) (void *)


typedef void(* 


Describes a work execution function type.



## Enumerations









Enumeration Name


Description


{ HDF_WORK_BUSY_PENDING = 1 << 0, HDF_WORK_BUSY_RUNNING = 1 << 1 }


Enumerates statuses of a work item or a delayed work item.



## Functions







































Function Name


Description


HdfWorkQueueInit (HdfWorkQueue *queue, char *name)


int32_t 


Initializes a work queue.


HdfWorkInit (HdfWork *work, HdfWorkFunc func, void *arg)


int32_t 


Initializes a work item.


HdfDelayedWorkInit (HdfWork *work, HdfWorkFunc func, void *arg)


int32_t 


Initializes a delayed work item.


HdfWorkDestroy (HdfWork *work)


void 


Destroys a work item.


HdfWorkQueueDestroy (HdfWorkQueue *queue)


void 


Destroys a work queue.


HdfDelayedWorkDestroy (HdfWork *work)


void 


Destroys a delayed work item.


HdfAddWork (HdfWorkQueue *queue, HdfWork *work)


bool 


Adds a work item to a work queue.


HdfAddDelayedWork (HdfWorkQueue *queue, HdfWork *work, unsigned long ms)


bool 


Adds a delayed work item to a work queue.


HdfWorkBusy (HdfWork *work)


unsigned int 


Obtains the status of a work item or delayed work item.


HdfCancelWorkSync (HdfWork *work)


bool 


Cancels a work item. This function waits until the work item is complete.


HdfCancelDelayedWorkSync (HdfWork *work)


bool 


Cancels a delayed work item.


点赞 回复
回帖
支持markdown部分语法 ?