【问题标题】:How to trigger event on current thread's target object如何在当前线程的目标对象上触发事件
【发布时间】:2014-11-16 16:43:26
【问题描述】:

在我的用例中,我有 JMSReader,它作为线程运行,从队列中获取消息,然后使用 JMSWriter 对象写入目标。 JMSWriter 对象触发事件的最佳方式是什么,这将导致 JMSReader 更新其状态。 注意:JMSWriter 的当前线程目标是 JMSReader。我正在使用java。我无法获得 JMSWriter 当前线程目标对象 (JMSReader) 的句柄。

线程作为Reader运行,它的目标对象是JMSReader。它使用 JMSWriter 写入主题。如何让 JMSWriter 触发特定 JMSReader 上的事件。它们都在 Reader 线程下。

谢谢, 乙

【问题讨论】:

    标签: java multithreading jms


    【解决方案1】:

    您可以尝试创建一个回调方法,通过将当前对象传递给线程来获取新创建线程的结果。

    然后with-in线程,执行完成后,可以在该对象中设置适当的状态[字段]并再次调用回调方法。下面提供了伪代码。

    Thread_1

    Thread_2 t = new Thread_2(callBackObj);
    
    //-- Start thread
    

    Thread_2

    callBackObj.setState(STOPPED); //-- Similarly for other properties
    
    callBackObj.callBack();
    

    否则,您可以尝试设置 correlation-idreply-to 选项,这可能有助于跟踪所需的消息信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-10
      • 1970-01-01
      • 2011-08-25
      相关资源
      最近更新 更多