Parallel的运行结果不符合预期
Parallel的运行结果不符合预期
在10秒内触发3次事件或在1帧里触发3次事件,预期的结果是a a a b,实际的结果是a a b
触发一次事件,我预期的结果是a b c,实际的结果是a c
在10秒内触发3次事件或在1帧里触发3次事件,预期的结果是a a a b c,实际的结果是a c a c a c
Last edited by kvfreedom on 2024/07/11 05:27, edited 1 time in total.
- caitsithware
- 管理人
- Posts: 65
- Joined: 2024/03/26 01:56
Re: Parallel的运行结果不符合预期
您似乎无法访问该图像。
请上传到其他地方或附加文件。
请上传到其他地方或附加文件。
Re: Parallel的运行结果不符合预期
图片已修改为附加文件
- caitsithware
- 管理人
- Posts: 65
- Joined: 2024/03/26 01:56
Re: Parallel的运行结果不符合预期
感谢您附上图片。
没有充分考虑单个Action节点连接到Parallel节点时的行为。
修改它,使所有节点都在运行并等待完成。
临时解决方法是在单个Action节点之后创建一个NextFrame任务节点,并将完成延迟一帧。
如果事件连接目标在执行过程中再次触发事件,请将事件设置为Cancellable以中途取消并重新执行。
如果您采取临时操作并启用Cancellable,则根据规范预期的正确结果如下。
没有充分考虑单个Action节点连接到Parallel节点时的行为。
修改它,使所有节点都在运行并等待完成。
临时解决方法是在单个Action节点之后创建一个NextFrame任务节点,并将完成延迟一帧。
如果事件连接目标在执行过程中再次触发事件,请将事件设置为Cancellable以中途取消并重新执行。
如果您采取临时操作并启用Cancellable,则根据规范预期的正确结果如下。
- a -> 10秒后 b
- a -> a -> a -> 10秒后 b
- a -> c -> 10秒后 b
- a -> c -> a -> c -> a -> c -> 10 秒后 b
Re: Parallel的运行结果不符合预期
Cancellable会让Task重新运行,不能满足让未完成的Task继续运行的需求caitsithware wrote: ↑2024/07/11 06:48 感谢您附上图片。
没有充分考虑单个Action节点连接到Parallel节点时的行为。
修改它,使所有节点都在运行并等待完成。
临时解决方法是在单个Action节点之后创建一个NextFrame任务节点,并将完成延迟一帧。
如果事件连接目标在执行过程中再次触发事件,请将事件设置为Cancellable以中途取消并重新执行。
如果您采取临时操作并启用Cancellable,则根据规范预期的正确结果如下。
- a -> 10秒后 b
- a -> a -> a -> 10秒后 b
- a -> c -> 10秒后 b
- a -> c -> a -> c -> a -> c -> 10 秒后 b
触发一次事件并在15秒后再触发一次事件,我期望的结果是a b1 a b2 b1
期待下个版本能修复这个问题
- caitsithware
- 管理人
- Posts: 65
- Joined: 2024/03/26 01:56
Re: Parallel的运行结果不符合预期
可能是翻译的原因,但好像表达不准确,所以我重新整理一下内容。
首先,这是一个错误,当Parallel激活时,如果连接目的地仅为 Action 并且立即结束,Parallel也会结束。
此问题将在未来的更新中修复。
如需在修复发布之前的临时解决方案,请在 Action 之后连接 Next Frame。
Event 和 Parallel 是单独的功能。
Cancelable 是一种规范,允许您选择是否忽略调用并继续原始执行而不取消,或者如果在连接目标运行时调用另一个事件,则取消并从头开始重新执行。
目前没有功能可以在继续正在进行的过程的同时并行启动进一步的执行。
首先,这是一个错误,当Parallel激活时,如果连接目的地仅为 Action 并且立即结束,Parallel也会结束。
此问题将在未来的更新中修复。
如需在修复发布之前的临时解决方案,请在 Action 之后连接 Next Frame。
Event 和 Parallel 是单独的功能。
Cancelable 是一种规范,允许您选择是否忽略调用并继续原始执行而不取消,或者如果在连接目标运行时调用另一个事件,则取消并从头开始重新执行。
目前没有功能可以在继续正在进行的过程的同时并行启动进一步的执行。
Re: Parallel的运行结果不符合预期
这样可以满足我的需求,如果有什么办法能只用1个事件节点实现就更好了kvfreedom wrote: ↑2024/07/11 07:57屏幕截图 2024-07-11 154516.pngcaitsithware wrote: ↑2024/07/11 06:48 感谢您附上图片。
没有充分考虑单个Action节点连接到Parallel节点时的行为。
修改它,使所有节点都在运行并等待完成。
临时解决方法是在单个Action节点之后创建一个NextFrame任务节点,并将完成延迟一帧。
如果事件连接目标在执行过程中再次触发事件,请将事件设置为Cancellable以中途取消并重新执行。
如果您采取临时操作并启用Cancellable,则根据规范预期的正确结果如下。
- a -> 10秒后 b
- a -> a -> a -> 10秒后 b
- a -> c -> 10秒后 b
- a -> c -> a -> c -> a -> c -> 10 秒后 b
Cancellable会让Task重新运行,不能满足让未完成的Task继续运行的需求
触发一次事件并在15秒后再触发一次事件,我期望的结果是a b1 a b2 b1
期待下个版本能修复这个问题
- caitsithware
- 管理人
- Posts: 65
- Joined: 2024/03/26 01:56
Re: Parallel的运行结果不符合预期
我很高兴您找到了满足您需求的方法。
我将接受使用单个事件节点的实现作为请求。
(但是,不保证实施)
我将接受使用单个事件节点的实现作为请求。
(但是,不保证实施)