java - 线程内线程 : what happens if parent thread is killed?

标签 java android multithreading

<分区>

总的来说,我无法理解线程。就我而言, 使用 Java 和 Android。

假设我有一个名为 A 的线程,它启动线程 B。如果线程 A 停止,则线程 B 将继续存在。这怎么可能?谁现在属于线程 B?到主线程?

线程类

public class ParentThread extends Thread {

    public void run(){
        Log.e("PARENT THREAD", "STARTS RUNNING");
        new Thread(new Runnable() {
            @Override
            public void run() {
                while (true) {
                    Log.e("CHILD THREAD", "IS ALIVE");
                    try {
                        Thread.sleep(1000);
                    }
                    catch (InterruptedException exc) {
                        e.printStackTrace();
                    }
                }
            }
        }).start();
        Log.e("PARENT THREAD", "STOPS RUNNING");
    }
}

Activity

new ParentThread().start();

Logcat 输出

01-07 13:45:16.726 22063-22081/? E/PARENT THREAD: STARTS RUNNING
01-07 13:45:16.726 22063-22081/? E/PARENT THREAD: STOPS RUNNING
01-07 13:45:16.727 22063-22082/? E/CHILD THREAD: IS ALIVE
01-07 13:45:17.727 22063-22082/? E/CHILD THREAD: IS ALIVE
01-07 13:45:18.727 22063-22082/? E/CHILD THREAD: IS ALIVE
01-07 13:45:19.727 22063-22082/? E/CHILD THREAD: IS ALIVE
...

最佳答案

来自文档 Thread

A Thread is a concurrent unit of execution. It has its own call stack for methods being invoked, their arguments and local variables. Each application has at least one thread running when it is started, the main thread, in the main ThreadGroup. The runtime keeps its own threads in the system thread group.

关于java - 线程内线程 : what happens if parent thread is killed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34655540/

相关文章:

java - 线程安全字段,避免读写冲突

multithreading - 互斥量在忙碌时被销毁

javax.security.cert.X509Certificate 与 java.security.cert.X509Certificate?

java - 如何从另一个 fragment 更新 DialogFragment 的 Textview

android - 将 Holo Action Bar 保留在 Lollipop 中

javascript - android/javascript - window.innerWidth 和 window orientationEvent 在正确时间触发的问题

java - Android 设备启动时一直运行后台代码

java - OWL-API 5.1.6 SWRL 规则生成和 RDFXMLDocumentFormat : rules are merged

java - 在 Java 应用程序中加载 Java 小程序

c++ - 复制构造函数相关的编译错误