Atitit. 。Jna技术与 解决 java.lang.Error: Invalid memory access

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

Atitit. 。Jna技术与 解决 java.lang.Error: Invalid memory access

 

 

1. 原因与解决1

2. jNA (这个ms sun 的)1

3. Code1

4. 参考2

 

1. 原因与解决

 

Timeout::wait  dll 或者other resource load finish...

And retry

 

2. jNA (这个ms sun 的)


我目前正做着一个相关的项目,说白了JNA就是JNI的替代品,以前用JNI需要编译一层中间库,现在JNA直接调用C的库
JNA的功能和P/Invoke类似,但编写方法与P/Invoke截然不同。JNA没有使用Annotation,而是通过编写一般的Java代码来实现。

P/Invoke是.NET平台的机制。而JNA是Java平台上的一个开源类库,和其他类库没有什么区别。只需要在classpath下加入jna.jar包,就可以使用JNA

JNA提供了一个动态的C语言编写的转发器,可以自动实现Java和C的数据类型映射。你不再需要编写那个烦人的C动态链接库。

当然,这也意味着,使用JNA技术比使用JNI技术调用动态链接库会有些微的性能损失。可能速度会降低几倍。但对于绝大部分项目来说,影响不大。

 

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

 

 

3. Code

 

public static void inix() throws IniEx {

//while(true)

{

try {

Thread.sleep(5000);

try {

ini_core();

} catch (Exception e) {

ini_core();

}

} catch (InterruptedException e2) {

// TODO Auto-generated catch block

e2.printStackTrace();

}

}

}

private static void ini_core() throws IniEx {

if(userID<=0)

{

try {

 

} catch (Throwable e) {

throw new RuntimeException(e);

}

if(userID<=0)

throw new IniEx();

}

}

 

 

4. 参考

paip.java 调用c++ dll so总结 - attilax的专栏 - 博客频道 - CSDN.NET.html

paip.java c# .net php python调用c++ c dll so windows api 总结 - attilax的专栏 - 博客频道 - CSDN.NET.html


           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值