|
|
知识路径: > 计算机系统综合知识 > 操作系统 > 网络操作系统与嵌入式操作系统 > 嵌入式系统 > 嵌入式操作系统 > 内核对象 >
|
相关知识点:6个
|
|
|
|
条件变量是一个与共享资源相关的内核对象,它允许一个任务等待其他任务创建共享资源需要的条件。一个条件变量实现一个谓词,谓词是一组逻辑表达式,涉及共享资源的条件。谓词计算的结果是真或假,如果计算为真,则任务假定条件被满足,并且继续运行,反之,任务必须等待所需要的条件。当任务检查一个条件变量时,必须原子性地访问,所以,条件变量通常跟一个互斥信号量一起使用。
|
|
|
一个任务在计算谓词条件之前必须首先获取互斥信号量,然后计算谓词条件,如果为真,条件满足继续执行后续操作;否则,条件不满足,原子性地阻塞该任务并先释放互斥信号量。条件变量不是共享资源同步访问的机制,大多数开发者使用条件变量,让任务等待一个共享资源到达一个所需的状态。
|
|
|
|
|
|
|
|
|
|
|
|