我在Spyder内部运行一个脚本,它利用多线程库,IPython控制台冻结,输出如下。但是,通过“python quickstart11.py”使用Windows命令提示符运行脚本可以正常工作并生成正确的输出。在
runfile('C:/Python35/User/backtrader-master/docs/quickstart/quickstart11.py', wdir='C:/Python35/User/backtrader-master/docs/quickstart')
Exception in thread Thread-8:
Traceback (most recent call last):
File "C:\Anaconda3\lib\threading.py", line 914, in _bootstrap_inner
self.run()
File "C:\Anaconda3\lib\threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
File "C:\Anaconda3\lib\multiprocessing\pool.py", line 429, in _handle_results
task = get()
File "C:\Anaconda3\lib\multiprocessing\connection.py", line 251, in recv
return ForkingPickler.loads(buf.getbuffer())
AttributeError: Can't get attribute 'TestStrategy' on <module '__main__' (<_frozen_importlib_external.SourceFileLoader object at 0x000002727C461438>)>
我已经尝试根据Python doc添加freeze\usupport(),这应该可以缓解问题,但它仍然冻结。怎么回事?在
Windows 10 64位,Anaconda Python 35 64位安装程序。在
问题出在斯派德身上。内核在解释模式下运行,并且添加“freeze_support”不会在其他事情之前发生,即使这是有意的,因为内核已经在运行。在
请看这里:https://github.com/mementum/backtrader/issues/118
相关问题 更多 >
编程相关推荐