如何释放在我的 RPC 服务器中分配的内存?
Posted
技术标签:
【中文标题】如何释放在我的 RPC 服务器中分配的内存?【英文标题】:How do I free the memory allocated in my RPC server? 【发布时间】:2016-08-23 15:42:16 【问题描述】:我有一个 RPC 服务器,它向客户端传输大量可变长度数据。 .x 文件看起来像这样
struct file
opaque data<>
;
在服务器例程中,我有
struct file *transfer_1_svc(...)
struct file;
file.data.data_val = malloc(...);
return &file;
我的问题是谁释放了在服务器例程中分配的数据?
【问题讨论】:
【参考方案1】:这取决于您的服务器代码。如果您使用 rpcgen 生成服务器存根,那么您可以使用 xdr_free 函数来释放结果。详情请查看 SunRPC 开发者指南:https://docs.oracle.com/cd/E19683-01/816-1435/rpcgenpguide-21470/index.html
【讨论】:
以上是关于如何释放在我的 RPC 服务器中分配的内存?的主要内容,如果未能解决你的问题,请参考以下文章