登录 注册
当前位置:主页 > 资源下载 > 50 > 任务超时后,将该任务设置为就绪状态,这是emc datadomain 2500存储设备维护手册中的规定

任务超时后,将该任务设置为就绪状态,这是emc datadomain 2500存储设备维护手册中的规定

  • 更新:2024-11-04 13:56:32
  • 大小:4.33MB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:OS - 操作系统
  • 格式:PDF

资源介绍

程序清单 L6.8 因为等待超时将任务置为就绪状态 void OSEventTO (OS_EVENT *pevent) { if ((pevent->OSEventTbl[OSTCBCur->OSTCBY] &= ~OSTCBCur->OSTCBBitX) == 0) { (1) pevent->OSEventGrp &= ~OSTCBCur->OSTCBBitY; } OSTCBCur->OSTCBStat = OS_STAT_RDY; (2) OSTCBCur->OSTCBEventPtr = (OS_EVENT *)0; (3) } 6.5 信号量 µC/OS-II 中的信号量由两部分组成:一个是信号量的计数值,它是一个 16 位的无符号整 数(0 到 65,535之间);另一个是由等待该信号量的任务组成的等待任务表。用户要在 OS_CFG.H 中将 OS_SEM_EN开关量常数置成 1,这样µC/OS-II才能支持信号量。 在使用一个信号量之前,首先要建立该信号量,也即调用 OSSemCreate()函数(见下一节), 对信号量的初始计数值赋值。该初始值为 0到 65,535之间的一个数。如果信号量是用来表示一 个或者多个事件的发生,那么该信号量的初始值应设为 0。如果信号量是用于对共享资源的访问, 那么该信号量的初始值应设为 1(例如,把它当作二值信号量使用)。最后,如果该信号量是用 来表示允许任务访问 n个相同的资源,那么该初始值显然应该是 n,并把该信号量作为一个可计 数的信号量使用。