我有一个大型的密码图书馆,用来撰写其结果。 我将其数据通过浮动阵列归还给类似C++方案(以避免经常档案I/O):
float* mgrib(...)
This worked fine in c++ where I could "free" the memory. I managed to get the data into C# properly via:
IntPtr pointer = mgrib(...);
float[] result = new float[ size ];
Marshal.Copy( pointer, result, 0, size );
Marshal.FreeCoTaskMem( pointer );
这属于一个漏洞,因为许多领域必须从这一职能中撤出。 如果其面积少于256个,那么它就发挥了巨大作用。 如果它越发失控,就会毫无警告。 如果我通过该档案妥善管理另一个档案(共计256多件)。 我远离欧安会专家,但256人似乎不止是巧合。
我欣赏任何见解。 感谢。