首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jboss线程中的commonj workmanager未等待完成

jboss线程中的commonj workmanager未等待完成
EN

Stack Overflow用户
提问于 2017-02-22 22:21:02
回答 1查看 678关注 0票数 0

我们已经在jboss EAP 6.4.9.GA和jdk 1.7中部署了commonj workmanager rar。我们使用工作管理器参考来创建多个线程,以防多个文件uploads.We具有默认的工作管理器配置,即最大线程数、核心线程数、队列长度的值为50。我们在spring xml中将依赖项定义为

代码语言:javascript
复制
<bean id="taskExecutor" 
class="org.springframework.scheduling.commonj.WorkManagerTaskExecutor">
<property name="workManagerName" value="java:jboss/wm/default-work-manager" />
<property name="resourceRef" value="false"/>
</bean>

在Invoker类中,提交工作

代码语言:javascript
复制
@Component
 public class RealtimeServiceInvoker 
 @Autowired
private WorkManagerTaskExecutor taskExecutor;
public Response execute(..)....
for(FileBean fileBean:fileList){
            SampleWork work = new SampleWork ();
            work.setFileBean(fileBean);
            colWorkItems.add(taskExecutor.schedule(work));
            requestList.add(work);
        }

        taskExecutor.waitForAll(colWorkItems, WorkManager.INDEFINITE);

我看到的是任务执行器没有等待任务完成,在下一步中,我们试图从Work对象中获取结果,但它抛出了异常

令人费解的是,jboss 6.2服务器和jdk 1.7在本地服务器上也可以使用相同的设置。

你能告诉我可能出了什么问题吗?

我还添加了WorkListener

代码语言:javascript
复制
taskExecutor.schedule(work,rtWorkListener);

我在workAccepted和WorkStarted的侦听器中获取日志。工作管理器不等待线程完成侦听器有没有替代的方法来实现等待线程完成使用complete.If?

EN

回答 1

Stack Overflow用户

发布于 2017-03-20 22:52:45

我尝试在jboss服务器中重新安装commonj workmanager,它的worked.It可能是服务器中旧版本的workmanager。但是他的行为很奇怪。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42394114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档