我正在尝试以有效的方式将字符串流从我的C ++程序传输到我的Java程序,但我不知道该怎么做。任何人都可以发布链接/解释如何实现这个的基本想法?
我正在考虑将我的数据写入文本文件,然后从我的Java程序中读取文本文件,但我不确定这是否足够快。我需要它,以便在16ms内传输一个字符串,这样我们就可以在一秒钟内将大约60个数据字符串传送到C ++程序。
答案 0 :(得分:2)
文本文件可以在几毫秒内轻松地向上写入和读取60个字符串的内容。
一些替代方案,如果你发现你正在遇到时间问题:
使用套接字编程。 http://beej.us/guide/bgnet/output/html/multipage/index.html。 套接字应该足够快。
还有其他替代方案,例如tibco消息服务,它将比您需要的速度快一个数量级:http://www.tibco.com/
另一种选择是使用mysql表来传递数据,并且可能只是设置一个环境变量,以指示应该查询最近一个条目的表。
或者我想你可以只使用一个环境变量来传达所有的信息 - 60个字符串不是很多。
前两个选项是更受尊敬的解决方案。
答案 1 :(得分:0)
答案 2 :(得分:0)
你做这件事的方式几乎就是这么快。一个文件可能是最慢的,它可能总共大约10毫秒!如果你还需要创建一个新的连接(它不是需要花费大部分时间的数据),Socket将是类似的。使用套接字具有发送者和接收者知道已经生成了多少数据的优点。如果您使用的是文件,则需要另一种方式来说,文件现已完成,您应该阅读它。例如套接字;)
如果C ++和Java处于同一个进程中,您可以使用ByteBuffer包装C数组并以大约1微秒的速度导入Java。