什么是jacob?jacob是一个开源项目它允许在java中调用com接口自动组件,它使用JNI(本地调用程序)来进行本地调用COM库。它可运行在x86和支持32位和64位Java虚拟机X64的环境(摘除自百度词条)。准备工作:需要的jar包:jacob.jar;此外还需要将jacob.dll放在在...
分类:
编程语言 时间:
2014-10-03 23:49:25
阅读次数:
326
使用NDk的场景:1.某些方法,是使用C,C++本地代码实现的,然后,我想在Java中调用这些方法。这个时候,就需要使用到JNI技术。为什么要使用C,C++代码实现呢?原因是:1.某些功能,需要使用到第三方的类库来实现,而第三方类库是用C或者C++写的,只有C或者C++代码才可以使用到该类库。于是,...
分类:
其他好文 时间:
2014-09-29 23:29:21
阅读次数:
308
最近用C++写安卓下的一个通讯程序,作为jni库给java调用,采用多线程轮询遇到一个问题描述如下:
A线程收到数据,放入队列,是生产者。
B、C、D若干个线轮询训消息队列,如果队列有数据就取出进行处理,没数据就Sleep(T)休息,问题是这个T值取多大合适?取大了消息处理不及时,取小了手机cpu上升电池很快耗光。
这个问题最佳解法是采用条件变量,可以比较完美解决问题...
分类:
编程语言 时间:
2014-09-29 22:17:21
阅读次数:
233
之前一直有接触源码里面的JNI体系,知道个大概,只管调进了哪个C/C++的接口,现在记录学习下。
NDK - Native Development Kit ,类似SDK性质,可以看作为一个编译工具的集合,
在android开发中常用于将C/C++代码打包编译成android 应用程序能够加载使用的模块,像动态静态库 .a ,.so....
分类:
其他好文 时间:
2014-09-29 19:52:08
阅读次数:
238
在空白处右键
选择Run Configurations
在虚拟机参数中输入“-verbose:class”
-verbose:gc
查看虚拟机中内存回收情况
-verbose:jni
查看本地方法调用的情况...
分类:
其他好文 时间:
2014-09-28 18:11:35
阅读次数:
237
首先,编写一个Java文件,包含有native方法 public class MyJni {
public native void display();
public native double sum(double x, double y);
public static void main(String[] args) {
...
分类:
编程语言 时间:
2014-09-28 16:10:54
阅读次数:
215
Java 之JNI编程1.什么是JNI? JNI:(Java Natibe Inetrface)缩写。2.为什么要学习JNI? Java 是跨平台的语言,但是在有些时候仍然是有需要调用本地代码(这些代码通常是由C/C++编写的). Sun公司提供的JNI是Java平台的一个功能强大的接口。这个JN....
分类:
编程语言 时间:
2014-09-27 18:17:40
阅读次数:
217
有些时候,要写一些程序,在 JAVA 里面好难实现, 但如果使用其它编程语言却又比较容易时,我们不妨通过 JNI 来让不同语言的程序共同完成. JNI 的教程, 网上 C 的比较多,Java 也提供了 javah.exe 为 C 语言的 JNI 程序...
分类:
编程语言 时间:
2014-09-26 14:39:19
阅读次数:
330