don*_*yor 4 java multithreading
我在java线程模型api中读过有关java线程的一件事.它说多个线程可以具有相同的名称.但是每个线程的pid都是唯一的,对吧?那叫什么名字?是不是线程类名?
那叫什么名字?是不是线程类名?
该名称是您设置它使用的任何名称Thread.setName.它只是为了诊断的目的.如果您未Thread.setName向构造函数调用或提供名称,则将根据文档确定该值:
分配一个新的Thread对象.此构造函数具有与
Thread (null, null, gname)gname 相同的效果,其中gname是新生成的名称.自动生成的名称具有以下形式"Thread-"+n,其中n是整数.
(在诊断上,给出一个指明其用途的特定线程名称显然更有用.)
创建新线程时,会为其分配一个自动生成的名称,其格式为 - "Thread-0", "Thread-1".
但是,您可以随时使用Thread#setName()方法更改Thread的名称: -
Thread.currentThread().setName("ABC");
Run Code Online (Sandbox Code Playgroud)
Thread.currentThread()返回对当前线程执行的引用,然后将该线程的名称设置为"ABC".