Java COM 桥

发布于 2024-12-02 17:56:14 字数 102 浏览 0 评论 0原文

我有一个超低延迟程序,需要与 Windows COM 组件交互。最快的方法是什么?使用像 JACOB 这样的 COM 桥或编写本机 COM 库并使用像 ZeroMQ 这样的消息总线发送消息?

I have an ultra-low latency program and need to interface with a Windows COM component. What would be the fastest way to do this? Using a COM bridge like JACOB or write a native COM library and send out messages using a messaging bus like ZeroMQ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

又怨 2024-12-09 17:56:14

如果您使用 ZeroMQ,您将处理两个进程。将消息从一个进程传递到另一个进程比在同一进程中执行相同的操作更昂贵。因此使用 Java COM 桥肯定会带来更低的延迟。

话虽如此,但只有当您处理极低的延迟时,它才有意义。如果您的 COM 组件的延迟已经比进程间消息传递高几倍(例如,因为它通过网络接收和转发消息或执行昂贵的计算),那么任一选项都可以,因为它们对整体都有边际影响延迟。

请注意,JACOB 并不支持所有 COM 组件,仅支持那些具有 COM 自动化接口的组件。因此您可能需要使用不同的 Java COM 桥,例如 JCom。

If you use ZeroMQ, you'll be dealing with two processes. And passing a message from one process to another is more expensive than doing the same within the same process. So using a Java COM bridge will certainly result in a lower latency.

Having said that, it's however only relevant if you're dealing with extermely low latency. If your COM component already has a latency several times higher than inter process message passing (e.g. because it is receiving and forwarding messages over a network or performing expensive computations), then either option will be okay because they both have a marginal effect on the overall latency.

Note that JACOB doesn't support all COM components, only those with a COM automation interface. So you might need to use a different Java COM bridge such as JCom.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文