Efficient data transfer from Java to C++ on windows

后端 未结 11 1340
我在风中等你
我在风中等你 2021-01-18 03:39

I\'m looking to stream lots of data (up to ~1 Gbit) from Java to a C++ application (both on the same machine). I\'m currently using a FIFO on Linux but need a Windows soluti

11条回答
  •  死守一世寂寞
    2021-01-18 04:23

    Your fastest solution will be memory mapping a shared segment of memory, and them implementing a ring-buffer or other message passing mechanism. In C++ this is straight forward, and in Java you have the FileChannel.map method which makes it possible.

    The next alternative would be to use the stdin/stdout of the two processes. If one can exec the other, this can be quite fast.

    Lastly, as you've noted, you can do socket IO. For streaming video this isn't a great option, but if your passing XML around, the overhead will be minimal in comparison to the other processing.

提交回复
热议问题