社区
Java
帖子详情
Hessian调用,内存没有释放
Tiger-3D
2014-03-19 12:24:05
服务器端Hessian接口的实现代码中,一个数组申请了10M的内存,然后用这个数组作为参数去调用一个JNI dll的接口,这个接口里面什么也不做。客户端循环调用Hessian接口100次之后,服务器端tomcat就挂掉了,原因是内存不足。但是,如果Hessian接口里面不调用JNI dll的接口的话,仍然循环100次,就不会有问题。
请问,这是什么原因?
...全文
1299
4
打赏
收藏
Hessian调用,内存没有释放
服务器端Hessian接口的实现代码中,一个数组申请了10M的内存,然后用这个数组作为参数去调用一个JNI dll的接口,这个接口里面什么也不做。客户端循环调用Hessian接口100次之后,服务器端tomcat就挂掉了,原因是内存不足。但是,如果Hessian接口里面不调用JNI dll的接口的话,仍然循环100次,就不会有问题。 请问,这是什么原因?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Tiger-3D
2014-03-19
打赏
举报
回复
引用 2 楼 huxiweng 的回复:
你主贴一分析就知道了啊。
引用 3 楼 huxiweng 的回复:
我本以为是dll中的内存问题
帖子中说了C++的dll中没有任何操作,直接return 0;原来是在JNI封装这一层出问题了。
teemai
2014-03-19
打赏
举报
回复
我本以为是dll中的内存问题
teemai
2014-03-19
打赏
举报
回复
你主贴一分析就知道了啊。
Tiger-3D
2014-03-19
打赏
举报
回复
找到问题了,原因不在Hessian,是JNI封装中间出了问题。 JNI封装中调用了GetByteArrayElements这个函数,但是没有调用ReleaseByteArrayElements来释放前一个函数所分配的内存,导致内存泄露。 嗨皮啊,惆怅了两天。
第3章 分布式基础之通信协议
1. HTTP、HTTPS 2. 常见的序列化技术,XML、JSON、Protobuf、kyro、
Hessian
等 3. Socket网络通信
C++ vector的
释放
项目上用到vector容器,
没有
手动
释放
,总是会在这里出现
内存
分配不成功的问题,因此对vector的
释放
了解了一下。 初始代码如下:vector <float*> dets(nTotalLayers); //dets : 记录每层图像的 ...
序列化技术初窥之Kryo、
Hessian
、Json
目录 何为序列化 ...
Hessian
序列化 依赖 快速入门 Fastjson序列化 依赖 快速入门 何为序列化 简而言之,序列化就是一种处理对象流的机制,即将对象的内容流化,将数据转化成字节流,以便存储在...
RPC(Remote Procedure Calls)远程过程
调用
很长时间以来都
没有
怎么好好搞清楚RPC(即Remote Procedure Call,远程过程
调用
)和HTTP
调用
的区别,不都是写一个服务然后在客户端
调用
么?这里请允许我迷之一笑~Naive!本文简单地介绍一下两种形式的C/S架构,先说...
个人面试总结
内存
泄漏memory leak :是指程序在申请
内存
后,无法
释放
已申请的
内存
空间,一次
内存
泄漏似乎不会有大的影响,但
内存
泄漏堆积后的后果就是
内存
溢出。
内存
溢出 out of memory :指程序申请
内存
时,
没有
足够的
内存
供...
Java
50,527
社区成员
85,606
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章