003 Thread的构造
Posted 最爱五仁月饼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了003 Thread的构造相关的知识,希望对你有一定的参考价值。
一 .Thread的构造
首先看下源码 :
public Thread() { init(null, null, "Thread-" + nextThreadNum(), 0); }
我们可以看到Thread的构造使用了init()函数.
通过这个函数,Thread的构造就出现了多种.我们就需要理解一下init的方法.
private void init(ThreadGroup g, Runnable target, String name, long stackSize) { init(g, target, name, stackSize, null); }
我们可以看到这个四个参数的含义了
[1]线程组
[2]线程的逻辑单元
[3]线程的名字
[4]线程的栈大小
二 .线程的名字
Thread在创建的时候会指定一个名字,同时我们也能为一个线程指定一个名字.
默认情况下: 线程的名字为 Thead -数量 这样的名字.
public static void main(String[] args) { Thread thread = new Thread(new Runnable() { public void run() { System.out.println(Thread.currentThread().getName()); } }) ; thread.setName("trek"); thread.start(); }
此处我们为线程指定了一个特定的名字.
三 线程组
[1] 如果一个线程没有声明一个线程组,那么它的线程组就是其父线程所在的线程组.
[2]main线程的线程组为main,
四 . 线程的stackSize
决定线程栈的大小,这个概念在JVM中会学下.
如果没有使用这个参数,虚拟机会默认给出一个大小.
这个参数在一些平台是无效的,因此我们一般不需要指定这个参数.
以上是关于003 Thread的构造的主要内容,如果未能解决你的问题,请参考以下文章
python高性能编程--003--线程之Thread和threading
[新增EA003考勤系统演示片段]全程字幕-22套UML+Enterprise Architect建模示范视频
NDK: ant 错误 [javah] Exception in thread "main" java.lang.NullPointerException 多种解决办法(代码片段