2013年6月5日

转载:linux进程的休眠(等待队列)

摘要: 当进程以阻塞的方式通信,在得到结果前进程会挂起休眠。为了将进程以一种安全的方式进入休眠,我们需要牢记两条规则:一、永远不要在原子上下文中进入休眠。二、进程休眠后,对环境一无所知。唤醒后,必须再次检查以确保我们等待的条件真正为真简单休眠完成唤醒任务的代码还必须能够找到我们的进程,这样才能唤醒休眠的进程。需要维护一个称为等待队列的数据结构。等待队列就是一个进程链表,其中包含了等待某个特定事件的所有进程。linux维护一个“等待队列头”来管理,wait_queue_head_t,定义在<linux/wait.h>struct __wait_queue_head {wq_lock_t lo 阅读全文

posted @ 2013-06-05 11:33 liyanfasd 阅读(258) 评论(0) 推荐(0) 编辑

导航