用多进程优化一直卡住出不来结果,debug了一下发现是在run_optimization 方法下的pool.join()处卡住了,不论优化数据有多少,等多久都一直卡在那。
请问有人知道怎么解决么
用多进程优化一直卡住出不来结果,debug了一下发现是在run_optimization 方法下的pool.join()处卡住了,不论优化数据有多少,等多久都一直卡在那。
请问有人知道怎么解决么
请运行下任务管理器程序,看看你优化时的CPU占用是否为100%,若是的话则说明还在执行回测计算的过程中~优化所需的计算时间确实挺久的
用Python的交易员 wrote:
请运行下任务管理器程序,看看你优化时的CPU占用是否为100%,若是的话则说明还在执行回测计算的过程中~优化所需的计算时间确实挺久的
不是的,是优化完成了,优化线程的CPU占用都是0%,但是卡在join处。
断点打在这里的话可以看见优化结果已经全部传到了results里,但子线程销毁不了。只有手动pool.terminate才能pool.join()成功
哦哦,那可能是某个进程中运行的优化回测任务,出现异常被挂起了,这种情况推荐用cmd运行python -m vnstation来启动,这样cmd中可以看到报错输出
用Python的交易员 wrote:
哦哦,那可能是某个进程中运行的优化回测任务,出现异常被挂起了,这种情况推荐用cmd运行python -m vnstation来启动,这样cmd中可以看到报错输出
我没有用vnstation,装的anaconda,然后写了run.py启动的窗口,这样该怎么启动才能看到报错?
这样的话,在运行run.py的cmd中应该直接就能看到报错信息了,看看有不
用Python的交易员 wrote:
这样的话,在运行run.py的cmd中应该直接就能看到报错信息了,看看有不
没有报错,用了pool.apply_async()的error_callback参数也没有返回错误,先曲线救国 用返回结果判断是否优化完后先terminate 再join可以暂时解决这个问题