我尝试在 python 中编写一个守护进程。但我不知道如何在这个守护进程中使用线程来启动并行 tcp 服务器。甚至我应该使用什么类型的服务器:asyncore?SocketServer?socket?
这是我的代码的一部分:
import os
def demonized():
child_pid = os.fork()
if child_pid == 0:
child_pid = os.fork()
if child_pid == 0: #fork twice for demonize
file = open('###', "r") # open file
event = file.read()
while event:
#TODO check for changes put changes in list variable
event = file.read()
file.close()
else:
sys.exit(0)
else:
sys.exit(0)
if __name__ == "__main__":
demonized()
所以在一个循环中,我有一个列表变量,每个圆圈都附加了一些数据,我想用 tcp 服务器启动一个线程,等待循环中的连接,如果客户端连接,则发送这个数据(带有归零变量)。所以我不需要处理多个客户端,客户端一次只有一个。实现这一点的最佳方法是什么?
谢谢你。