我们使用Jacorb 2.2.3实现Corba。在某些并发场景中,Jacorb在调用Corba服务器对象上的API时断断续续地挂起。
我尝试通过调优Jacorb.properties来重新创建它。甚至试图在服务器端处理关闭的对象,但都是徒劳的。
从服务器线程转储中,观察到RequestProcessor线程( Jacorb用于处理并发请求)被锁定,如下所示
"RequestProcessor-26" ... nid=0x25cc in Object.wait() [0x000000004237f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700)
- locked <0x0000000150714178> (a org.jacorb.poa.RequestProcessor)
"RequestProcessor-25" ...nid=0x3250 in Object.wait() [0x000000004227f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700)
- locked <0x0000000150e90748> (a org.jacorb.poa.RequestProcessor)我在找两样东西
发布于 2016-12-19 16:30:10
自从那个版本的JacORB以来,已经有了多个修复程序。有些是关于同步代码的。目前的版本是3.8,我建议您尝试在这方面重复您的问题。您可能会发现http://www.jacorb.org/contact.html对于报告JacORB的问题很有用。
https://stackoverflow.com/questions/41149204
复制相似问题