2023-01-19 361
我已经成为Java开发人员已经有几年了,并且听说您可以与JNI一起做一些非常有用和有力的事情.我不知道我是否只是不需要使用它,还是它与我无关.但是我根本不必触摸它.
我想知道Java这一方面的有用性是什么.例子很棒.
它非常有用.我可以看到使用JNI的两个主要原因(可能还有更多).
性能.如果您有一段代码,无论出于何种原因,Java运行时都无法削减其性能.您可以在本机代码中实现该功能,并从Java调用它.如果您确实需要,这使您可以将实施调整.但是,这可能是最不常见的原因,Java通常表现良好.
访问OS特定API.这是一个大事.我有一个需要在Java中做某事的情况,但还需要访问Java根本无法提供的东西.就我而言,是Unix域插座.由于(如您所知)它们是特定于Unix的,因此没有标准的Java使用它们.因此,我做了一个在C中像包装纸一样的班级,并与JNI访问了它.中提琴,解决问题.
我为iSeries撰写了一个广泛的JNI层,以访问DB2,用户队列,数据队列和其他一些OS/400细节.没有JNI,我们在iSeries上的许多系统都是不可能的.所以,是的,jni拥有它的位置,当您需要时,您真的需要它.
这是相对困难的(距离纯Java),但功能强大却不可怕.
另外,每当我查看一些JNI代码时,我还考虑使用 jna ./p>
我可以想到头顶上有几种用途:
有些人可能会说这对于创建高度优化的代码部分可能很有用,但是使用现代JVM,您会变得非常快,并且使用JNI的复杂性可能会超过您可能看到的任何性能好处.
以上所述是小编给大家介绍的JNI的有用性,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!
原文链接:https://77isp.com/post/25845.html
=========================================
https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态