[英]Python Flask Application with Threads not running parallel
我正在尝试构建一个 Python 程序,该程序通过 UDP 发送数据并有一个网站进行设置。 对于这个程序,我需要一个脚本来运行 flask 网络服务器和一个脚本来同时提取数据。 我想使用线程同时运行进程(Flask 服务器和数据拉/发送部分)。 因为我需要一直运行提取数据的部分,所以我做了“While True:”,所以它一直在运行但是当我启动我的线程时,只有提取数据的线程正在运行。 我认为问题在于,我并没有真正同时运行 2 个线程。 但我认为使用线程应该可以同时运行 flask 线程和数据线程。 但我无法让它工作,我无法找出问题所在。
这是我试图启动两个线程的文件:
import threading
import time
import mainl
import webserver
class mydata(threading.Thread):
def __init__(self, iD, name):
threading.Thread.__init__(self)
self.iD = iD
self.name = name
def run(self):
mainl.mainloop()
class mywebserver(threading.Thread):
def __init__(self, iD, name):
threading.Thread.__init__(self)
self.iD = iD
self.name = name
def run(self):
webserver()
t1 = mydata(1, "t1")
t2 = mywebserver(2, "t2")
t2.start()
t1.start()
这是提取数据的文件,它应该始终运行,这就是我使用“While True:”的原因:
def mainloop():
while True:
import data1
import data2
import data3
###UDP###
ip_adress = "192.168.178.150"
udp_port = 8888
text = ""
data1 = data1.daten()
data2 = data2.daten()
data3 = data3.daten()
# print("Coin STR", coin)
time.sleep(3)
text = "data1 data2 data3"
send.senden(ip_adress, udp_port, text)
我发现了问题,导入中的循环在导入时开始了。 所以程序没有继续。
现在我在主 function 中运行导入。
有关更多信息,我可以推荐: https://www.guru99.com/learn-python-main-function-with-examples-understand-main.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.