vn.py量化社区
By Traders, For Traders.
Member
加入于:
帖子: 14
声望: 0

请问我有如下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
加入于:
帖子: 4028
声望: 220

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

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

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

Administrator
avatar
加入于:
帖子: 4028
声望: 220

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

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

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

Administrator
avatar
加入于:
帖子: 4028
声望: 220

谢谢反馈!

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