避免从C ++到Java的大量数据拷贝

时间:2016-11-29 08:32:25

标签: java c++ java-native-interface native

我有一个高性能的应用程序。要求。

手头的问题是我需要调用一些Java API来从Java API将本机(C ++)数组复制到磁盘中。数据会很大,所以我想避免从C到Java的拷贝。我想以某种方式传递对数据的引用并序列化该数据

问题在于,如果我发送byte[],Java GC将删除它,我们不希望这种情况发生。

我想过将我的原生数组数据包装在C ++的类/结构中,但最后我需要在Java端使用byte[]流或类似的流。有没有办法可以将一些C ++中的数据引用到Java中的byte[],并且在此之后立即单独留下该内存,避免GC回收它?

0 个答案:

没有答案