定时结构的优先级指定了定时结构相对于程序框图上其他定时结构的执行开始时间。设置定时结构的优先级可使应用程序中存在多个在同一VI中互相预占执行顺序的任务。定时结构的优先级越高,则相对于其他定时结构的执行顺序便越靠前。优先级的输入值必须为1到65,535之间的正整数。

程序框图中的每个定时结构会创建和运行含有单一线程的自有执行系统,因此不会出现并行的任务。在程序框图的数据流中,定时循环总在优先级未配置为实时优先级的VI前执行。

注: 如程序框图中同时存在优先级配置为实时的VI和定时顺序,将导致无法预计的定时行为。

可为每个定时顺序结构或定时循环的帧指定优先级。运行包含定时结构的VI时,LabVIEW将检查结构框图中所有可执行的帧的优先级并首选从优先级最高的帧开始执行。

注:(NI Linux Real-time)不要在VI中设置超过32个定时结构优先级。否则,LabVIEW将返回错误。

以下程序框图包含了一个定时循环及一个定时顺序结构。定时顺序结构(200)的第一帧的优先级的值高于定时循环(100)的优先级,故定时顺序结构的第一帧首先执行。

定时顺序结构第一帧执行完毕后,LabVIEW将比较其他可执行的结构或帧的优先级。定时循环的优先级(100)高于定时顺序结构第二帧的优先级(50)。在本例中,定时循环将在定时顺序结构第二帧执行前完全执行完毕。

右键单击输入节点,选择配置输入节点并修改优先级的值可设置定时结构的优先级。也可将一个值连接至循环最后一帧的右侧数据节点的“优先级”输入端,以动态设置定时循环后续各次循环的优先级。对于定时结构,可将一个值连接至当前帧的右侧数据节点,以动态设置下一帧的优先级。默认状态下,帧的右侧数据节点不显示所有可用的输出端。如需显示所有可用的输出端,可调整右侧数据节点大小或右键单击右侧数据节点并从快捷菜单中选择显示隐藏的接线端

注:(NI Linux Real-Time) NI建议用户交互式修改定时结构优先级。动态修改定时结构优先级会降低运行速度。

定时结构主页