【发布时间】:2015-02-19 11:17:31
【问题描述】:
对不起,我有一个愚蠢的问题。
我有两个线程。 Thread_Main 和 Thread_Simple,在 Thread_Main 中执行方法 A() 和方法 B()。在 Thread_Simple 中执行方法 C()。现在:first performed method A(), then performed method C(), then performed method B(), then performed method A(), then performed method C(), then method B(), ...
但我想要:first performed method A(), then performed method B(), then performed method C(), then A(), B(), C(), ... 怎么办?我只能访问 Thread_Simple (Thread.currentThread()),如何从 Thread.currentThread() 获取 Thread_Main?
【问题讨论】:
-
你的问题很抽象:/
-
如果事情必须以特定的串行顺序运行,那么你为什么首先使用线程?
-
当你想要 Sequential Order 时,那么使用线程的目的是什么?改用顺序代码.......
-
如果您想确保方法 A()、B() 和 C() 以特定顺序依次调用,方法是从单个线程中调用它们。线程仅在可以以任何顺序安全执行某些操作的程序中才有用。线程之间总会有一些同步,但是你使用的越多,你从线程中获得的好处就越少。如果您强制所有线程以锁步方式运行,那么您将无法从线程中获得任何好处,但您仍然会承担与线程相关的许多风险。
标签: java multithreading synchronization android-espresso