java - 从特定线程调用方法是否会自动使其在单独的核心上运行?

标签 java multithreading

<分区>

比如我做两个线程:

ExampleThread t1 = new ExampleThread();   
ExampleThread t2 = new ExampleThread();
t1.start();
t2.start();

然后每个线程中的 run() 中的任何内容都已完成。然而,我知道我仍然可以打电话,比如说,

t1.exampleMethod();

在 run() 完成之后。这是否适用于它自己的核心?

谢谢。

最佳答案

首先,您不想扩展 Thread 而是实现 Runnable,实际上这样做可能有助于消除您的一些困惑,因为即使 t1 扩展了一个 Thread,您调用一个方法也会 不在该线程上运行,即 t1 线程,而是在调用它的线程中运行。

另请注意,“线程运行完成后”,线程不再运行——它完成了,消失了,kaput。

关于java - 从特定线程调用方法是否会自动使其在单独的核心上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35331894/

相关文章:

java - 如何在调用 API 中保存 Intent 值?

c++ - Qt, C++, 如何退出 QThread

android - progressDialog 动画在大型 setText() 上暂停

c# - Webservice - 线程与异步方法调用

c# - C# 中的内存使用情况

java - 在非常耦合的业务逻辑中解耦 Java 中的类

Java - 从文本中读取值

java - Android:将分秒转换为毫秒

Java Math.incrementExact(int a) 目的

c++ - 由无锁容器管理的缓冲区的完整性