我的目标是将数据从C++进程传递到Java进程,然后再收到结果。
我已经通过命名管道实现了这一点,但我更希望共享数据而不是传递或复制它,因为这样可以更快地访问。
最初,我考虑在C++中创建一个共享段,以便我可以用Java写入并读取,但我不确定是否可以通过JNI实现这一点,更不用说安全性了。
我相信在Java中可以使用ByteBuffer.allocateDirect分配内存,然后使用GetDirectBufferAddress来访问C++中的地址,但如果我正确的话,这只适用于JNI内的本地调用,我无法在我的C++进程中获取这个地址?
迷茫中。
先感谢您。