Still haven't ran your test code, but I have looked at it at a glance and throwing out some ideas to try and pre-emptively solve your problem.
1. This may not actually be a memory leak in the classical definition but rather a case of memory being allocated faster than the Java GC can clean up. All Java proxy classes have a delete() method that tears down the underlying associated C++ pointer and frees any associated memory. This method is generally called as part of GC finalization. Perhaps try calling delete() on your MgByteSource/MgByteReader manually after using them to force the matter perhaps? 2. Do you need/have to pass file byte buffers around? MgByteSource constructor can also take a file path, so there's the option of using temp files, which would avoid needing to manage byte buffers and marshaling them between Java <-> C++ and avoid allocating memory on the C++ side to handle the marshaled bytes. - Jackie -- Sent from: http://osgeo-org.1560.x6.nabble.com/MapGuide-Users-f4182607.html _______________________________________________ mapguide-users mailing list [email protected] https://lists.osgeo.org/mailman/listinfo/mapguide-users
