GRPC - 使用完 IService 后是否需要处理或关闭它?
GRPC - Do I need to dispose or close the IService when I finish using it?
IService service = MyGrpcChannel.CreateGrpcService<IService>();
long[] ids = service.GetIds();
close/destroy IService 使用完毕后,我是否需要对它做些什么?
没必要,服务只是渠道上的一层薄薄的外表:
https://github.com/protobuf-net/protobuf-net.Grpc/issues/166
我也做了一个创建100万个服务的测试:
for(int i = 0; i <= 1000000; i++)
{
MyGrpcChannel.CreateGrpcService<IService>().GetIds();
}
任务管理器上没有内存泄漏。在执行开始时它使用了 100mb,在结束时也是如此。
IService service = MyGrpcChannel.CreateGrpcService<IService>();
long[] ids = service.GetIds();
close/destroy IService 使用完毕后,我是否需要对它做些什么?
没必要,服务只是渠道上的一层薄薄的外表:
https://github.com/protobuf-net/protobuf-net.Grpc/issues/166
我也做了一个创建100万个服务的测试:
for(int i = 0; i <= 1000000; i++)
{
MyGrpcChannel.CreateGrpcService<IService>().GetIds();
}
任务管理器上没有内存泄漏。在执行开始时它使用了 100mb,在结束时也是如此。