c/c++语言开发共享通过JNI / DLL或EXE执行本机代码?

我们有一个本机应用程序,我们可以通过JNI-> DLL或通过命令行参数调用EXE来访问。 哪种方法最好?

我们将每天调用此方法大约100次。 表现并不是非常重要。 这个原生应用程序是由我们公司以外的团队开发的,所以我们不太熟悉代码(尽管我们拥有它)。

EXE路线似乎更容易,更直接(特别是因为我们没有使用很多C)。 另外,如果你的DLL代码有内存泄漏或遇到其他一些麻烦,我会收集JNI,你可以崩溃你的JVM。

    我强烈推荐使用.exe方法。

    缺点是您可能必须解析.exe输出以确定结果/状态等,如果它不是为此设计的,那么这可能是不切实际的(甚至是不可能的)。

    但作为第一种方法,产生.exe是可行的方法。 不要忘记同时使用stdout / err以避免任何.exe挂起问题(一个常见的问题,如果要相信SO问题)。

    对于这种情况,我会调用.exe,主要是因为在这种情况下不稳定的应用程序无法破坏JVM。

    每天拨打.exe 100次就足够快了。

    另一方面,如果.dll提供了一个很好的API,那么使用它可能会让你更好地诊断问题,如果出现问题。

      以上就是c/c++开发分享通过JNI / DLL或EXE执行本机代码?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/544665.html

      (0)
      上一篇 2021年1月9日
      下一篇 2021年1月9日

      精彩推荐