python - 同时运行多个函数(线程)
问题描述
我想同时运行不同的python函数。每个函数都是完全独立的不同算法交易策略。我想避免同时打开多个 Spyder 实例(尽管我的 PC 肯定不是很强大,但在打开并运行 5 个以上的实例时,我经历了几次 Spyder 崩溃)。
我使用线程,但似乎只有第一个代码正在运行(即t1
)。
我可能做错了什么?
#set the path to working directory
from os import chdir, getcwd
#C:\Users\User\Desktop\Python for Finance\MACD_Strategy\Alpaca_MACD
wd = "C:\\Users\\User\\Desktop\\Python for Finance\\MACD_Strategy\\Alpaca_MACD"
chdir(wd)
from MACD_Alpaca_5min_15min_LS_Portfolio_System_Yahoo import MACD_Alpaca_algo
from MACD_reverse_Alpaca_5min_15min_LS_Portfolio_System_Yahoo import MACD_2_Alpaca_algo
import threading
t1 = threading.Thread(target = MACD_Alpaca_algo())
t2 = threading.Thread(target = MACD_2_Alpaca_algo())
t1.start()
t2.start()
解决方案
您在产生线程之前调用该函数。这是正确的方法。
t1 = threading.Thread(target = MACD_Alpaca_algo)
t2 = threading.Thread(target = MACD_2_Alpaca_algo)
推荐阅读
- opengl - Opengl Blit 缓冲区
- c# - 3 维数组的哪些索引具有最大值?
- here-api - 如何在 HERE maps js 中将动画添加到 svg 图标标记中?
- simulation - Modelica 中的 Sweptvolume 组件内部的压力
- javascript - 如何更有效地使用 Trampoline 类型作为变压器的基本单子?
- rxjs - 源为数组时如何取消合并映射
- r - 将包含多个 gganimate 动画的 magick gif 导出为 mp4
- python - 从终端使用 python 时 -i 和 -u 有什么区别?
- emulation - 如何在 qemu-system-ppc 中挂载外部磁盘?
- node.js - Nodejs:如何在另一个路由器中使用来自路由器的变量