Java中得到当前线程的名字
时间: 2023-12-10 09:40:48 浏览: 184
可以通过Thread.currentThread().getName()方法获取当前线程的名字。例如:
```
String threadName = Thread.currentThread().getName();
System.out.println("当前线程名字为:" + threadName);
```
相关问题
java线程中终止当前线程的方法
Java线程中终止当前线程的方法有两种:
1. 使用Thread类的interrupt()方法:该方法会向当前线程发送一个中断信号,如果线程在等待或者阻塞状态下,会抛出InterruptedException异常,可以在catch块中处理该异常,或者在run()方法中使用isInterrupted()方法来判断是否收到了中断信号。
2. 使用Thread类的stop()方法:该方法会直接停止当前线程,但是不推荐使用该方法,因为它可能会导致线程的状态不可预测,可能会造成程序的不稳定性和安全性问题。
Java线程池中打印当前线程名称
可以使用Thread.currentThread().getName()方法获取当前线程名称,然后在任务执行的过程中打印出来,如下所示:
```java
public class MyTask implements Runnable {
@Override
public void run() {
// 打印当前线程名称
System.out.println("当前线程名称:" + Thread.currentThread().getName());
// 任务具体逻辑
// ...
}
}
public class ThreadPoolTest {
public static void main(String[] args) {
// 创建线程池
ExecutorService threadPool = Executors.newFixedThreadPool(5);
// 提交任务
for (int i = 0; i < 10; i++) {
threadPool.submit(new MyTask());
}
// 关闭线程池
threadPool.shutdown();
}
}
```
在MyTask的run方法中打印当前线程名称,然后在main方法中提交MyTask任务给线程池执行,就可以看到输出结果中打印了当前线程的名称。