从第二个线程设计模式调用主线程对象方法

时间:2013-11-08 08:56:05

标签: java design-patterns

我有基于状态模式的程序。主线程通过启动第二个线程启动第一个状态更改。根据像观察者设计模式生成的第二个线程事件,所有其余状态都会更改。我需要在第一个(主要)线程方法中调用几个对象。该对象在主线程中创建,负责通过TCP传输信息。我不是这个对象类的作者。问题是如果我在第二个线程中调用此对象方法它不起作用。什么是解决这个问题最优雅的方法?我不想改变TCP对象的代码,因为它很庞大,我没有时间进行分析。

我必须使用Java 1.4版

1 个答案:

答案 0 :(得分:0)

如果我找到你,你:

  1. 有两个主题;
  2. 一个线程执行TCP流量;
  3. 有时您必须从第二个线程启动TCP流量;
  4. 但它失败了,因为TCP代码不是线程安全的。
  5. 看起来您需要一个单线程执行器服务来完成所有TCP工作。您可以从任何其他线程向该执行程序服务提交任务。