跳到主要内容

旧节点

有几种节点仍能运行,但不再出现在节点工具箱里。你只会在打开旧版本保存的流程时遇到它们。

本页的存在,是为了让你在工具箱里找不到的节点永远不再是谜。

用途

解释每个退役节点曾经做什么、什么取代了它,以及遇到一个时该怎么办。

何时需要本页

  • 你打开旧流程,看到工具箱里没有的节点类型。
  • 流程校验通过并运行,但你加不出同类节点。
  • 你在现代化一个旧流程。

退役的节点类型

旧节点状态替代
Loop (classic)logic.loop能运行;不在工具箱Loop + Loop End 区域标记
Parallelcontrol.parallelStart作为惰性直通运行Monitor Scope
Parallel Endcontrol.parallelEnd作为惰性直通运行Monitor Scope
Parallel Blockcontrol.parallel能运行;不在工具箱Monitor Scope
Loop Endcontrol.loopEnd非旧节点——随 Loop 自动创建
Loop End 不是旧节点

control.loopEnd 不在工具箱里,是因为你添加 Loop 时它会被自动创建。每个 Loop 都需要配对的 Loop End,编辑器管理这对。它是产品正常、现行的一部分。

Loop (classic)

最初的循环节点,把迭代路由暴露为真实端口——enterexitlimitExceeded——由你自己接线。

它被 Loop / Loop End 区域模型取代:你画一条普通的节点主体链,编译器生成进入、重复与退出路由。这一改动消除了产品里最常见的创作错误:接错的回边。

如果你有一个

它仍能运行。要现代化,用 Loop 区域替换:

  1. 加一个 Loop 节点,设相同的 mode、max iterations、condition 与 counter 变量。
  2. 从 Loop 到 Loop End 接主体链。
  3. 把原先跟在 exit 后的东西接到 Loop End 之后的节点。
  4. 删掉 classic 节点。

Parallel、Parallel End、Parallel Block

Parallel 家族对一张共享截图运行多个叶分支并合并结果。

它在 Observer Scope 重设计中被移除,Monitor Scope 是它的替代,针对它真正被用于的场景:在其他工作进行时守望某个东西。

加载时发生什么

规范的 Parallel 区域在每条加载路径上被自动拆开——标记被移除、内部链被拼接穿过,流程继续运行、内部串行执行。

无法迁移的区域仍能校验,并把标记作为惰性直通运行,内部串行执行。无论哪条路,结果都一致。

Parallel 从不意味着并发的流程执行

即便它仍现行时,一个会话也是一次执行一个节点。真正的并发来自在多个实例上运行流程,或来自 Flow Queue——不来自某个节点。

若你继承了用 Parallel 的流程并指望它比串行快——它并不快。

它曾携带的分支约束

作参考:只有单步叶节点类型能做并行分支——各检测节点,以及 Click、Swipe、Zoom、Key Press、Input Text、Wait。控制/逻辑/循环/并行节点被排除,因为它们需要多个运行时步骤。

一个区域最多 16 个分支。

已停用的设置

有些设置退役了,但其节点仍现行:

设置节点状态
Wait after clickwaitAfterMsClick运行时忽略;从编辑器移除。接一个 Wait
Strength (px)strengthPxZoom仅从旧流程接受。新流程用分辨率无关的 Zoom factor
start / end 点Swipe旧模型;依赖分辨率。优先方向+距离,或区域模式
固定点pointClick旧;编辑器迁移到 Click Region
Scope / matched-item 变量Memory Match被容忍并忽略;下次保存时消失

这些都被容忍,好让旧流程继续校验并运行。它们都不应出现在新工作中。

最佳实践

  • 别刻意创作旧节点,即便负载仍能校验。
  • 顺手编辑时就现代化。 在流程里顺手转换一个 classic Loop 只要几分钟;专门的迁移项目要好几天。
  • 打开后重新保存旧流程——几个已停用的设置会在保存时消失。
  • 别指望 Parallel 快。 并发来自实例,不来自节点。
  • 现代化后测试。 把转换后的流程放回计划前用 Test Flow。

性能笔记

  • 旧 Parallel 标记作为惰性直通运行——成本近乎零,收益也近乎零。
  • classic Loop 与 Loop 区域运行表现相同;差别是创作安全,不是速度。
  • 被忽略的设置运行时零成本。

内存笔记

  • 拆开 Parallel 区域发生在加载时、内存图上。你保存的流程直到你保存才改变。
  • 被忽略的参数在保存的流程里占位,直到下次保存移除它们。

常见错误

错误后果修复
在工具箱找 Loop End它自动创建添加一个 Loop
指望 Parallel 并发运行它从不并发用多实例或队列
依赖 waitAfterMs被忽略Wait 节点
认定旧流程坏了它仍能运行方便时现代化
把旧模式复制进新流程带进退役概念用现行节点

故障排查

我流程里某个节点不在工具箱。 查上表。它要么退役了,要么像 Loop End 那样自动创建。

我含 Parallel 的旧流程运行得跟以前不一样。 区域被拆开、内部串行运行——本来它以前也实际如此。

我记得的某个设置从 Properties 面板消失了。 查已停用设置表。它在存储里被容忍,但不再显示。

更新后旧流程校验失败。 查运行日志里的具体错误。多数旧结构是刻意容忍的;真正的失败通常指向缺失素材或不支持的节点类型,而非某个旧设置。

FAQ

旧节点会停止工作吗? 移除 Parallel 标记类型是有计划的清理。方便时现代化,不必着急。

应用会自动重写我的流程吗? Parallel 区域在加载时于内存里拆开。你保存的流程只在你保存时改变。

Loop End 是旧节点吗? 不是。它随 Loop 自动创建。

还能添加 Parallel 节点吗? 从工具箱不能。

相关页面