我在CORBA中遇到了序列问题。我可以使用非优雅的解决方案来解决问题(至少对我而言不是优雅的)。
生成内存泄漏的(不是真实的)代码如下:
{
IntMatrix m;
m.lenght(100);
for (int i = 0; i < 100; i++)
{
m[i].lenght(99);
}
//Send 'm' matrix and exit from this scope
}
(非优雅的)解决方案是这样的:
{
IntMatrix m;
m.lenght(100);
intSeq s;
s.lenght(99);
for (int i = 0; i < 100; i++)
{
m[i] = s;
}
//Send 'm' matrix and exit from this scope
}
我一直在寻找Internet上的原因,但只能找到有关名为“release”的标志的文本。
有人可以帮我吗?
谢谢。
最佳答案
我假设当您说“发送m矩阵”时,您是在客户端。
我认为第一段代码是正确的。如果存在内存泄漏,则可能是由于您正在使用的ORB实现中存在错误。