gpt4 book ai didi

java - Thread[main,5,main] 和 Thread[Thread-77416,5,main] 有什么区别

转载 作者:行者123 更新时间:2023-11-29 07:27:47 28 4
gpt4 key购买 nike

我已经创建了一个工作线程,

Thread thread= new Thread(runnable);
thread.start();

我在工作线程中打印这个;

    Log.d("SessionThread", Thread.currentThread().toString());

我得到以下输出;

Thread[Thread-77416,5,main]

当我在 Activity 的主线程上尝试 Thread.currentThread() 时。它打印如下。

Thread[main,5,main]

现在我无法理解为什么工作线程日志消息中的第三个参数是 main

我需要了解这些参数的含义,我用谷歌搜索了这个但无法找到有关 Thread.currentThread()

参数的任何帮助

最佳答案

Thread#toString()返回“此线程的字符串表示形式,包括线程的名称、优先级和线程组”。

所以第一部分是线程的名称。该名称可以在创建时传递给 Thread(String) 构造函数,或者通过 setName() 进行配置。如果未指定名称,则使用 "Thread-"+ n 形式的默认值。初始线程显然称为 “main”,但我不确定这是标准化的。

第二部分是优先级,通过setPriority()配置。

第三部分是线程组。这是通过 Thread(ThreadGroup, ...) 构造函数设置的。如果在线程创建时未指定,SecurityManager.getThreadGroup() 的值使用,默认情况下是当前线程的线程组。这意味着,默认情况下,main 线程创建的任何线程也将与 main 线程在同一线程组中。

关于java - Thread[main,5,main] 和 Thread[Thread-77416,5,main] 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48128924/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com