我有一个gRPC客户端集成,它接收大小约为65MB的消息(主要是日期x时间元组数组)。反序列化收到的消息似乎在初始请求时分配了大约700MB的额外非托管内存。后续相同的请求不会再增加总的进程内存消耗。
这正常吗?有没有办法弄清楚到底是怎么回事,或者更好地控制这种情况?
发布于 2021-04-14 19:09:50
这似乎与在异步上下文中接收数据有关。不知何故,任务调度器保留了转换后的消息有效负载的task。在调用gRPC客户端的异步方法的末尾添加一个Task.Yield()似乎可以解决这个问题。
https://stackoverflow.com/questions/67062364
复制相似问题