计时器#
Timer任务允许在工作流中使用不同类型的计时器(休眠、超时、重复计时器、cron作业)。
输入#
| 名称 | 数据类型 | 是否是触发器 | 描述 |
|---|---|---|---|
| 时间间隔 | Integer | 否 | 除cronJob外,所有计时器类型的时间间隔输入 |
| 激活 | Boolean | 是 | 激活/停用任务中配置的计时器 |
Note
尽管绘制的任务框指示Activate输入是any类型的,但它将基于转换为布尔值的值进行操作。可见信息将在未来版本中修复。
输出#
| 名称 | 数据类型 | 描述 |
|---|---|---|
| 时间戳 | DateTime | 以UTC形式显示的计时器发生时间戳。每次计时器发生时发出 |
| 成功 | Boolean | true 当在Timer、Sleep或以下模式上触发内部计时器时发出的值 CronJob |
| 错误 | Error | 处理此任务期间或超时时发生的错误 |
设置#
| 名称 | 数据类型 | 值 | 默认 | 描述 |
|---|---|---|---|---|
| 自动激活 | Boolean | true | 激活工作流时(当控制器启动/重新启动时),任务计时器将处于活动状态并立即开始计时 | |
| 计时器类型 | enum | TimerSleepTimeoutCronJob | Timer | 任务要使用的计时器类型。每种类型都有自己的配置集 |
计时器类型 Timer#
| 名称 | 数据类型 | 值 | 默认 | 描述 |
|---|---|---|---|---|
| 时间间隔 | Integer | 10000 | 等待计时器下次激活的毫秒数 | |
| 工作模式 | UntilDeactivationNumberOfOccurrences | UntilDeactivation | 计时器处于活动状态时将触发的次数 | |
| 出现次数 | Integer | 30 | 将发生的触发次数,如果WorkingMode设置为 NumberOfOccurrences |
计时器类型 Sleep#
| 名称 | 数据类型 | 默认 | 描述 | |
|---|---|---|---|---|
| 时间间隔 | Integer | 10000 | 激活任务之前等待的毫秒数。此时间后将自动停用 |
计时器类型 Timeout#
| 名称 | 数据类型 | 默认 | 描述 |
|---|---|---|---|
| 时间间隔 | Integer | 10000 | 超时前等待的毫秒数。此时间后将自动停用 |
计时器类型 CronJob#
| 名称 | 数据类型 | 值 | 默认 | 描述 |
|---|---|---|---|---|
| Cron表达式 | String | “* * * * * *” | 用于定义将触发作业的特定日期和时间的表达式 | |
| 时区 | enum | <timezones> | UTC | 用于作业计划的时区 |
行为#
此任务有四种不同的操作模式,但它们只会在以下情况之一触发:
-
Auto Activate设置设为true -
Activate输入具有true布尔值(或兼容值,例如1、true、t、yes、y)
计时器#
每间隔interval毫秒,timestamp和Success输出都会发出相应的值。
如果任务的Working Mode设置被配置为UntilDeactivation,它将永远不会停止,除非为Activate输入提供了一个false布尔值。
如果任务的Working Mode设置被配置为NumberOfOccurrences,该计时器将在发生Number of Occurrences次后自动停止。««
Note
计时器第一次被触发是在interval毫秒之后。
休眠#
激活interval毫秒后,timestamp和Success输出都会发出相应的值。
超时#
激活interval毫秒后且如果尚未停用,timestamp和Error输出都会发出相应的值。
CronJob#
激活后,当到达由cron表达式指定的日期和时间时,timestamp和Success输出都会发出相应的值。
备注#
如果Activate输入接收到false布尔值,任何活动计时器都将立即停用。
在Timeout模式下配置时,Success输出将永远不会发送任何值。
如果任务被重新激活,所有内部定义都将被重置(特别是CurrentNumberOfOccurrences)。
此任务使用基于上下文的数据的特定结构,称为zone。有关此主题的更多信息,请参阅区域页面。




