原创 等待队列

2009-4-27 08:53 2373 9 9 分类: MCU/ 嵌入式


  1. 定义“等待队列头”



wait_queue_head_t
my_queue;


  1. 初始化“等待队列头”



init_waitqueue_head(&my_queue);


  1. 定义等待队列



DECLARE_WAITQUEUE_HEAD(name)


  1. 添加/移除等待队列



void
fastcall add_wait_queue(wait_queue_head_t *q, wait_queue_t *wait);


void
fastcall remove_wait_queue(wait_queue_head_t *q, wait_queue_t *wait);


  1. 等待事件



wait_event(queue,
condition)


wait_event_interruptible(queue,
condition)


wait_event_timeout(queue,
condition, timeout)


wait_even_interruptible_timeout(queue,
condition, timeout)


  1. 唤醒队列



void
wake_up(wait_queue_head_t *queue);


void
wake_up_interruptible(wait_queue_head_t *queue);


  1. 在等待队列上睡眠



sleep_on(wait_queue_head_t
*q);


interruptible_sleep_on(wait_queue_head_t
*q);


文章评论0条评论)

登录后参与讨论
我要评论
0
9
关闭 站长推荐上一条 /2 下一条