Completion
来源:互联网 发布:linux新建文档命令 编辑:程序博客网 时间:2024/03/29 13:01
completion是一种轻量级的机制,它允许一个线程告诉另一个线程某个工作已经完成。
completion的典型应用是模块退出时的内核线程终止。
代码必须包含<linux/completion.h>。使用的代码如下:
1.创建completion
DECLARE_COMPLETION(my_completion);/* 创建completion(声明+初始化) */
如果必须动态的创建和初始化completion使用下面的方法:
struct completion my_completion;/* 动态声明completion 结构体*/
void init_completion(&my_completion);/*动态初始化completion*/
2.等待completion
void wait_for_completion(struct completion *c);/* 等待completion */
3.唤醒completion
void complete(struct completion *c);/*唤醒一个等待completion的线程*/
void complete_all(struct completion *c);/*唤醒所有等待completion的线程*/
注意:/*如果未使用completion_all,completion可重复使用;否则必须使用以下函数重新初始化completion*/
INIT_COMPLETION(struct completion c);/*快速重新初始化completion*/
- Completion
- completion
- completion
- completion
- completion使用方法
- Matrix Completion
- linux completion
- completion使用方法
- bash-completion
- Linux Completion
- completion 1
- dismissViewControllerAnimated:completion:
- I/O Completion Ports
- Eclipse中的Hippie Completion
- I/O Completion Ports
- I/O Completion Ports
- I/O Completion Ports
- MATRIX COMPLETION PAPERS
- log4net 在VS2010 NET4下的使用
- hdu 1277 全文检索
- 源码安装软件 pkgconfig ld.so.conf ldconfig
- 五、工厂模式
- eclipse安装ADT插件
- Completion
- 序列容器(list)
- linux UART串口驱动开发文档
- Windows Phone开发(42):缓动动画
- 关于《学习基于ARM平台的嵌入式系统》的收获和思考
- IO端口与IO内存
- 免锁算法----原子变量
- 原子操作
- 应用程序和内核模块的区别