如何在gRPC服务器中清理ThreadPoolExecutor?

问题描述 投票:0回答:1

创建grpc服务器实例时,

server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))

ThreadPoolExecutor.shutdown在grpc server.stop()中未被1.25.x调用。

我想开发人员必须手动关闭,还是ThreadPoolExecutor被某些东西(?)关闭。

停止grpc服务器和ThreadPoolExecutor的宽限方法是什么?

python grpc grpc-python
1个回答
0
投票

您是正确的。 gRPC不会关闭提供给服务器的ThreadPoolExecutors。这是用户的责任。例如,您可以自由地将提供的线程池用于您自己的工作以及gRPC方法处理程序,因此该库将超越其界限来为您执行此操作。

当然,在关闭正在使用线程池的服务器之前,您不希望关闭线程池。为此,您将要使用Server.stop方法。

© www.soinside.com 2019 - 2024. All rights reserved.