Synchronous and asynchronous alarms

<< 点击显示目录 >>

主页  mappServices帮助手册 > mapp AlarmX: 报警管理 > 概念 >

Synchronous and asynchronous alarms

本节解释了同步和非同步报警在系统中的表现。

默认情况下,报警的行为是同步的。配置属性 "Asynchronous = TRUE"使报警成为异步的。

alarmconfig_asynchronous

同步报警

同步警报在其被调用的同一环境中被启用、重置或确认。这 MpAlarmXCore 位于 哪个任务类中无关 。如果 MpAlarmXCore 位于100ms任务类中,并且启用了10ms任务类中的警报,那么该警报在被设置后立即在10ms任务类中的系统中变得活跃。可能的反应也会立即激活,并可以在之后的代码行中使用 MpAlarmXCheckReaction进行 检查 。

当同步报警被启用时,片段信息也被立即访问。同步报警行为应该被选择用于时间关键性的报警。如果立即需要响应或必须直接查询警报片段的值,例如,推荐使用同步行为。所有其他警报都可以异步定义。

异步报警

配置属性 "异步 "仅适用于用户定义的、 边缘和持久性报警。该设置也可以为其他mapp组件的警报定义。

异步警报不会在它们被调用的同一上下文中启用、重置和确认,而是被转发到 MpAlarmXCore 并在那里处理。只有报警的时间戳被转发。其他信息,如  配置中定义的 报警片段报警映射 ,在 MpAlarmXCore 的上下文中解决 。这意味着,来自 警报片段的信息  和由 警报映射 定义的行动 解析会有延迟,这取决于 MpAlarmXCore 所在的任务类别  。

无论警报是被配置为同步还是异步,都要评估警报的时间戳和顺序。

异步配置的报警的一个主要优点是改进了mapp AlarmX ,因为在短时间内必须评估的数据较少。启用、重置或确认报警的命令可以在更高优先级的任务类中进行。默认情况下,周期时间和任务类的容忍度较低,不会因设置报警而受到负面影响。通过 MpAlarmXCore进行的报警管理 可以在更高的任务类中进行管理,其周期时间和容忍时间默认较高。