【问题标题】:Is it possible to invoke different methods by different threads with in the run method是否可以在 run 方法中由不同的线程调用不同的方法
【发布时间】:2018-03-29 16:34:16
【问题描述】:

我有多个方法,需要由不同的线程并行启动。

public void run() {
        method1();
        method2();
        method3();
        }

我想让threadONE启动method1(),threadTWO并行启动method2(),可以吗?

【问题讨论】:

  • 是的,有可能。
  • 是的,这是可能的
  • 你能告诉我怎么做吗?
  • 如果你只是谷歌它有很多网站在深入解释这一点

标签: java multithreading


【解决方案1】:

你写的是一个run()方法,调用method1(),然后调用method2(),再调用method3()

你想要的是三个不同的Runnable 实例;一个带有run() 调用method1(),一个带有run() 调用method2(),一个带有run() 调用method3()

run() 没有什么神奇之处。这只是一种方法,就像任何其他方法一样。如果您想在不同的线程中发生某些事情,那么您必须调用一些库例程(例如,构造一个新的Thread 对象和start() 它,或者向ExecutorService 提交一个任务)来实现它。

【讨论】:

    【解决方案2】:

    一个是调用方法1(),第二个方法调用第一行,第三个方法相同。

    调用method1(method2(),method3());

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 2015-03-12
      • 2021-09-09
      相关资源
      最近更新 更多