如何在Jaseci中从头运行Walker而非从其暂停状态启动?
强制Jaseci Walker从头启动的方法
当Walker处于暂停(yielded)状态时,要强制它从头启动并使用全新上下文,可通过以下两种方式实现:
1. 执行命令时添加--reset参数
在运行Walker时,给walker run命令加上--reset参数,会直接重置目标Walker的状态,清除已保存的has变量上下文,让它从初始节点重新开始执行。
示例命令:
# 在终端直接运行Jac文件时 jac run your_walker.jac --reset # 在jsctl交互式环境中 walker run your_walker --reset
2. 手动删除暂停的Walker实例
先通过命令查看当前处于暂停状态的Walker实例,删除目标实例后重新运行,即可获得全新的上下文。
步骤示例:
- 查看所有暂停的Walker:
walker list - 删除指定的Walker实例:
walker delete <目标Walker的实例ID> - 重新启动Walker:
walker run your_walker
额外提醒:如果Walker逻辑中依赖了全局或持久化变量,建议在Walker的初始化逻辑里显式重置所有has变量,避免旧的残留值干扰新的执行流程。
内容的提问来源于stack exchange,提问作者Yiping Kang
相关产品推荐
相关产品推荐

