VeighNa量化社区
你的开源社区量化交易平台
Member
加入于:
帖子: 14
声望: 1

请问我有如下nogui 简单程序, 这个程序命令行 python test.py 运行完后不能退出,ctrl-C/ctrl-D 也不行。请问是什么原因? 已确定...部分全部执行。问题是出在engine.close()么?是这么用的么?多谢。

    from vnpy.app.script_trader import init_cli_trading
    from vnpy.gateway.ctp import CtpGateway
    engine = init_cli_trading([CtpGateway])
    engine.connect_gateway(ctp_setting, "CTP")
    ...
    engine.close()
Administrator
avatar
加入于:
帖子: 4501
声望: 321

哦哦,这里的engine.close是关闭了脚本引擎的运行,但无法影响底层VN Trader主引擎的工作,直接杀掉进程就行。

Member
加入于:
帖子: 14
声望: 1

多谢,我要写个脚本自动运行,完后退出,不是24小时while loop运行的, 如何自动杀掉这个主进程?

Administrator
avatar
加入于:
帖子: 4501
声望: 321

在你的子进程里面,调用sys.exit函数强制退出好了

Member
加入于:
帖子: 14
声望: 1

多谢,留作记录: sys.exit(), quit()均不能退出, 需要os.kill(os.getpid(),signal.SIGTERM)

Administrator
avatar
加入于:
帖子: 4501
声望: 321

谢谢反馈!

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】