java.lang.Thread、java.lang.ThreadGroup和java.lang.ThreadLocal<T>详细解读
一、Thread类
public class Thread extends Object impments Runnable
线程是程序中的 执行线程。java虚拟机允许应用程序并发地运行多个执行线程
每个线程都有一个优先级,高优先级线程的执行优先于低优先级线程。每个线程都可以或不可以标记为一个守护线程。当某个线程中运行的代码创建一个新Thread,该新线程的初始优先级被设定为创建线程的优先级,并且当且仅当创建线程是守护线程时,新线程才是守护线程。
当java虚拟机启动时,通常都会有单个非守护线程(它通常会调用某个指定类的main方法)。java虚拟机会继续执行线程,直到下列任一情况出现时为止
* 调用了Runtime类的exit方法,并且安全管理器允许退出操作发生
*非守护线程的所有线程都已经停止运行,无论是通过对run方法的通用中返回,还是通过抛出一个传播run方法之外的异常
创建新线程有两种方法。一种方法是将类声明为Thread类的子类。改类应该重写Thread类中的run方法。接下来可以分配并启动改子类的实例
创建线程的另外一种方法是声明实现Runnable接口的类。该类实现了run方法,然后可以分配该类的实例。在创建Thread时作为一个参数来传递并启动
每个线程都有一个标识名,多个线程可以同名。如果线程创建时没有指定标识名,就会为其生成一个新名称。
两个嵌套类
Thread.State 线程状态 六种状态(new runnable bolcked waiting timed_waiting terminated)
Thread.UncaughtExceptionHandler 当Thread 因未捕获的异常而突然中止时,调用处理程序接口
三个字段摘要
max_priority 线程可以具有的最高优先级
min_priority 线程可以具有的最低优先级
norm_priority 分配给线程的默认优先级
八个构造方法
Thread(); 分配新的Thread对象
Thread(Runnable target) 分配新的Thread对象
Thread(Runnable target,String name) 分配新的Thread对象,并且指定线程的名称
Thread(String name) 分配新的Thread对象,并且指定线程的名称
Thread(ThreadGroup group,Runnable target) 分配新的Thread,并且指定线程组
Thread(ThreadGroup group ,Runnable target,String name) 分配新的Thread 并且指定线程组和该线程的名称
Thread(ThreadGroup group,Runnable target,String name,long stackSize) 指定堆栈大小
Thread(ThreadGroup group,String name) 分配新的Thread对象,并且指定线程组合改线程的名称
24个方法摘要其中有过期的方法



java.lang.Thread、java.lang.ThreadGroup和java.lang.ThreadLocal<T>详细解读的更多相关文章
- java之Thread Dump分析
什么是Thread Dump Thread Dump是非常有用的诊断Java应用问题的工具.每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机 ...
- java.lang.Thread
package java.lang; import java.lang.ref.Reference; import java.lang.ref.ReferenceQueue; import java. ...
- 线上zk节点报org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:187) at java.lang.Thread.run(libgcj.so.10)
线上zk做配置管理,最近突然发现两个节点一直在刷下边 java.nio.channels.CancelledKeyException at gnu.java.nio.SelectionKeyIm ...
- Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: PermGen space
在Eclipse 调试 springside showcase项目中,tomcat报异常 Exception in thread "RMI TCP Connection(idle)" ...
- Java 线程--继承java.lang.Thread类实现线程
现实生活中的很多事情是同时进行的,Java中为了模拟这种状态,引入了线程机制.先来看线程的基本概念. 线程是指进程中的一个执行场景,也就是执行流程,进程和线程的区别: 1.每个进程是一个应用程序,都有 ...
- java.lang.Thread类详解
java.lang.Thread类详解 一.前言 位于java.lang包下的Thread类是非常重要的线程类,它实现了Runnable接口,今天我们来学习一下Thread类,在学习Thread类之前 ...
- [Scala] java使用scala的jar包问题:Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Short
场景 刚写的scala处理bmp文件的实验, 打了jar包让java调用一下, 结果发生这个错误. package org.tanglizi.bmp.demo; import org.tanglizi ...
- java能不能自己写一个类叫java.lang.System/String正确答案
原文: http://www.wfuyu.com/php/22254.html 未做测试 ! 最近学习了下java类加载相干的知识.然后看到网上有1道面试题是 能不能自己写个类叫java.lang.S ...
- Java 错误提示org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException
java 操作excel文件 发布后报错 org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException XSS ...
随机推荐
- Java兔子问题
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? /** * @Title:Rabbit.java ...
- stl string 容器的使用
string 是基本的字符串序列容器,对应数据结构中的串,和vector<char>也类似,但功能更多 string 容器的使用 1,string 的构造函数是. string() 2,s ...
- 芝麻HTTP:Python爬虫实战之爬取糗事百科段子
首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 友情提示 糗事百科在前一段时间进行了改版,导致之前的代码没法用了,会导致无法输出和CPU占用过高的 ...
- Qt keyPressEvent
keyPressEvent是QWidget里面的函数,所以凡是继承自QWidget的类都可以通过实现这个函数来完成对按键事件的响应. 要让当前的widget能够响应按键事件,最先需要做的事情是,调用: ...
- iOS - Quartz 2D 画板绘制
1.绘制画板 1.1 绘制简单画板 PaintBoardView.h @interface PaintBoardView : UIView @end PaintBoardView.m @interfa ...
- 异常-----Java compiler level does not match解决方法
1, 先设置好jdk,需要确定 项目,eclipse/myeclipse,系统 用的是同一个版本的JDK,我系统中安装的JDK是1.7,所以我把eclipse的jdk成1.7 2, 进入 window ...
- 动态链接库(DLL)
DLL 的类型 当您在应用程序中加载 DLL 时,可以使用两种链接方法来调用导出的 DLL 函数.这两种链接方法是加载时动态链接和运行时动态链接. 加载时动态链接 在加载时动态链接中,应用程序像调用本 ...
- WPF中使用WebBrowser
最近在做北京现代项目的时候,遇到一个需求将韩国那边写好的网页嵌套到WPF程序中显示. 开始的时候使用的是第三方的浏览器控件:awesomium,在本地测试,显示没有问题.但是拿到客户现场,只显示半屏. ...
- JAVA简便解析json文件
JAVA简便解析json文件 首先放上我要解析的json文件: { "resultcode":"200", "reason":"S ...
- 【Luogu3041】视频游戏的连击(AC自动机,动态规划)
题面链接 题解 首先构建出AC自动机 然后在AC自动机上面跑DP 转移很显然从Trie树的节点跳到他的儿子节点 但是要注意一个问题, 在计算的时候,每一个节点加入后能够 造成的贡献 要加上他的子串的贡 ...