用Java的JNI技术技术调用C++,C++运行效率会不会比单独运行时慢?

[复制链接]
查看11 | 回复1 | 2009-7-12 03:24:40 | 显示全部楼层 |阅读模式
在java to c 或者c to java的接口穿越时, 会损失一点性能.但总的来说无关紧要.
回复

使用道具 举报

千问 | 2009-7-12 03:24:40 | 显示全部楼层
这要取决于在方法中执行的语句,如果只是作一些简的操作,调用C/C++代码反而会拉低效率,如果是比较复杂的一些运算如图像处理变换等,C/C++代码效率更高。  java中引入jni技术的原由是由于java的运行效率较低,当遇到处理图像声音等需要大量运算的操作时,java力不从心。所以引入执行效率较高的C/C++代码供java调用,以弥补java的这一缺陷。  jni虽然一定程度上能够提高效率,但要慎用,适当用。如果只作简单的加法,却用jni效率反而大大降低。并且jni会影响java的跨平台性和稳定性。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行