Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 同名线程_Java_Multithreading - Fatal编程技术网

Java 同名线程

Java 同名线程,java,multithreading,Java,Multithreading,我在Java线程模型API中读过一篇关于线程的文章。它表示多个线程可以具有相同的名称。但是每个线程的PID都是唯一的,对吗?那名字叫什么?不是线程类名称吗 那名字叫什么?不是线程类名称吗 名称是您设置要使用的名称。这只是为了诊断的目的。如果您没有调用Thread.setName或向构造函数提供名称,则该值将根据以下文档确定: 分配一个新的线程对象。此构造函数与线程(null,null,gname)具有相同的效果,其中gname是新生成的名称。自动生成的名称的形式为“Thread-”+n,其中n是

我在Java线程模型API中读过一篇关于
线程的文章。它表示多个线程可以具有相同的名称。但是每个线程的PID都是唯一的,对吗?那名字叫什么?不是线程类名称吗

那名字叫什么?不是线程类名称吗

名称是您设置要使用的名称。这只是为了诊断的目的。如果您没有调用
Thread.setName
或向构造函数提供名称,则该值将根据以下文档确定:

分配一个新的线程对象。此构造函数与
线程(null,null,gname)
具有相同的效果,其中gname是新生成的名称。自动生成的名称的形式为
“Thread-”+n
,其中n是一个整数


(从诊断的角度来看,给出一个特定的线程名来指明它的用途显然更有用。)

不,这是一个线程名,如果你看到一个线程转储,你就会知道哪个线程在做什么

创建新线程时,会为其分配一个自动生成的名称,其形式为-
“thread-0”
“thread-1”

但是,您可以随时使用以下方法更改线程的名称:-

Thread.currentThread().setName("ABC");

Thread.currentThread()
返回对当前正在执行的线程的引用,然后将该线程的名称设置为
“ABC”

hey Jon。谢谢,现在我想起了方法
setName()
,但是如果我不设置名称,会给出什么名称呢?哦,是的,很抱歉问了一个愚蠢的问题:)@doniyor。很好。没有问题是愚蠢的。你可以问任何问题,但你应该先自己解决。是的,我只是出于兴趣阅读了java api,然后找到了这个文档。我立刻想到了pid,但没有想到它的名字。。无论如何,非常感谢你的时间和解释+1:)是的,但我想,JVM也会在某个地方使用这个名称。因此,名称只是一种规范,供人类在其他线程中识别线程。。