用jacob实现java调VB的dll,线程无法释放,请教高人!!

renyongliang 2007-09-04 02:42:10
我用jacob实现java调vb的dll,java程序实现了多线程,主线程用socket监听,来一个请求就开辟一个线程,每一个线程都调用vb的dll中的方法。
功能实现没有问题,已经测试通过,但是用loadrunner压力测试的时候发现,开辟的线程无法释放,导致java.exe占用内存逐渐增大,当压力到4000笔左右的时候,java虚拟机就挂掉了。
请教一下哪位朋友做过类似的项目,可有什么好的解决方法?感激不尽
...全文
168 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
renyongliang 2007-09-07
  • 打赏
  • 举报
回复
再up一下,这个问题困扰我很久了。。。
bushuang 2007-09-06
  • 打赏
  • 举报
回复
做个沙发..
renyongliang 2007-09-06
  • 打赏
  • 举报
回复
自己顶一下,没有哥们遇到过类似的问题吗?
JACOB里的总共有两个包: com jacob activeX:JACOB可以通过它度(Dispatch)activeX 控件 com jacob com:JACOB通过它用系统DLL (activeX是由微软公司推出的用于Internet的技术 以前曾经被称为OLE 和OCX activeX web插件可以用于各种非HTML的工作 比如 对MicrosoftExcel 或 MicrosoftWord 文件做操作 解析JS VB脚本 播放FA有一点可以确定的是在JACOB内部 com jacob activeX是建立在com jacob com之上的 而com jacob com中有一个很基础的类com jacob com JacobObject 其中比较常用的两个类com jacob com Dispatch和com jacob com Variant便是继承自它 (com jacob com Dispatch;里面提供了度MS windows系统API 比如进程的管理 com jacob com Variant; 里面数据类型的转换的方法 Variant类本身是JACOB的最最基本的数据类 他可以被转换成任何的类 如: 使用toDispatch();可以将Variant转化成Dispatch对象 ) com jacob com中还有其他的一些类不是建立在JacobObject之上的 如com jacob com ComThread(负责COM线程管理 ) com jacob com所有的类 包括上面说到的JacobObject ComThread 都是通过com jacob com LibraryLoader中的loadJacobLibrary()方法: static { LibraryLoader loadJacobLibrary ; } jacob dll内的方法 比如:Dispatch java就通过LibraryLoader和Dispatch h Dispatch cpp建立联系 从而建立起javajacob dll到jni的之间的联系 LSH 用Microsoft MediaPlayer等 )">JACOB里的总共有两个包: com jacob activeX:JACOB可以通过它度(Dispatch)activeX 控件 com jacob com:JACOB通过它用系统DLL (activeX是由微软公司推出的用于Internet的技术 以前曾经被称为OLE 和OCX activeX web插件可以用于各 [更多]
JACOB里的总共有两个包: com jacob activeX:JACOB可以通过它度(Dispatch)activeX 控件 com jacob com:JACOB通过它用系统DLL (activeX是由微软公司推出的用于Internet的技术 以前曾经被称为OLE 和OCX activeX web插件可以用于各种非HTML的工作 比如 对MicrosoftExcel 或 MicrosoftWord 文件做操作 解析JS VB脚本 播放FA有一点可以确定的是在JACOB内部 com jacob activeX是建立在com jacob com之上的 而com jacob com中有一个很基础的类com jacob com JacobObject 其中比较常用的两个类com jacob com Dispatch和com jacob com Variant便是继承自它 (com jacob com Dispatch;里面提供了度MS windows系统API 比如进程的管理 com jacob com Variant; 里面数据类型的转换的方法 Variant类本身是JACOB的最最基本的数据类 他可以被转换成任何的类 如: 使用toDispatch();可以将Variant转化成Dispatch对象 ) com jacob com中还有其他的一些类不是建立在JacobObject之上的 如com jacob com ComThread(负责COM线程管理 ) com jacob com所有的类 包括上面说到的JacobObject ComThread 都是通过com jacob com LibraryLoader中的loadJacobLibrary()方法: static { LibraryLoader loadJacobLibrary ; } jacob dll内的方法 比如:Dispatch java就通过LibraryLoader和Dispatch h Dispatch cpp建立联系 从而建立起javajacob dll到jni的之间的联系 LSH 用Microsoft MediaPlayer等 )">JACOB里的总共有两个包: com jacob activeX:JACOB可以通过它度(Dispatch)activeX 控件 com jacob com:JACOB通过它用系统DLL (activeX是由微软公司推出的用于Internet的技术 以前曾经被称为OLE 和OCX activeX web插件可以用于各 [更多]

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧