【发布时间】:2021-11-01 06:01:43
【问题描述】:
问题
我正在尝试生成客户端服务器异步通信。换句话说,我有一个与客户端一起运行的批处理文件,该客户端处理运行并与客户端通信。我正在使用PoolProcessExecutor 调用客户端和批处理。启动客户端后,该进程将停止运行。
代码如下所示:
批处理文件:
def subprocess_function():
p = Popen(scriptPath, cwd=filepath)
stdout, stderr = p.communicate()
驱动文件
for episode in range(n_episodes):
print(f"\r\n{'-' * 60}\r\n")
with concurrent.futures.ProcessPoolExecutor() as executor:
client = CustomClient("tcp://127.0.0.1:5556", "tcp://127.0.0.1:5555")
sub_proc = executor.submit(subprocess_function)
client_proc = executor.submit(client.Start(agent, buffer))
问题
当我尝试将 subprocess_function 转换为我将进程分配给变量的类时,我相信它会导致代码在继续启动下一个进程之前等待分配,但我不是 100% 确定。
我需要改用ThreadPoolProcessor吗?
【问题讨论】:
标签: python multithreading multiprocessing subprocess python-asyncio