unschedTm

unschedTm 方法用于取消超时请求。

在下列情况下使用此方法:

unschedTm 方法的工作方式如下:

  1. 如果 OMReactive 实例不存在,那么 unschedTm 将返回;否则,此方法将调用互斥对象以保护以下操作:
    • 如果 id == Constants,那么 unschedTm 将取消目标为这个特定 OMReactive 实例的所有事件。
    • unschedTm 调用 isCurrentEvent 方法以确定当前事件是否已委派给此 OMReactive。如果情况如此,那么 unschedTm 将调用 findInList 方法(私有)以在到期列表中找到超时,然后从到期列表中除去此超时。
  2. 接下来,unschedTm 为以下各项创建三个克隆:
  3. unschedTm 方法将遍历整个堆,并调用 删除 方法以删除其目标为特定 OMReactive 的那些超时。
  4. 最后,此方法在到期列表中查找匹配的超时。它调用 findInList 方法来遍历到期列表,以查找匹配的超时。如果找到匹配的超时,那么它将调用 setlId 方法以将此超时的标识设置为 Constants,然后从到期列表中除去此超时。
  5. 如果 id == Constants,那么 unschedTm 仅取消该事件。
可见性
Public
特征符
RP_FRAMEWORK_DLL void unschedTm (short id,
   OMReactive *c);
参数
id

指定超时请求的标识标记。

如果指定了 Constants,那么 unschedTm 将取消目标为这个特定 OMReactive 实例的所有事件。如果指定了 Constants,那么 unschedTm 仅取消该超时。

c

指定指向 OMReactive 实例请求者的指针。取消超时后,此参数将指向所通知的实例。

备注

反馈