文档章节

Thread

脑丨残
 脑丨残
发布于 2017/05/23 22:30
字数 332
阅读 6
收藏 0
点赞 0
评论 0

线程

线程

  • 操作系统调度的最小单元,线程有自己独立的计数器,堆栈和局部变量表,并且能够访问共享的内存变量。

线程的状态

  • NEW 被创建,没有调用start();
  • RUNABLE 运行状态,Java线程将操作系统中就绪和正在运行2种状态笼统的称作运行中
  • BLOCKED 阻塞状态,表示线程阻塞于锁
  • WAITING 等待状态,表示线程进入等待状态,进入该状态表示当前线程需要等待其他线程做出一些特定动作(通知或中断)
  • TIME_WAITING 超时等待状态,该状态不同于WAITING,它是可以在指定时间内自行返回的。
  • TERMINATED 终止状态,表示当前线程已经执行完毕。

tips

  • synchronized 用jstack打出日志,线程处于BLOCKED状态,而Lock接口的锁会处于等待状态,因为concurrnet包中Lock实现了LockSupport类中的相关方法。详情见后

daemon 线程

theadlocal

  • 线程变量,一Threadlocal对象为键,任意对象为值的存储结构,这个结构被附带在线程上,每个线程可以根据一个Theadlocal对象查询到绑定在这个线程上的一个值。
  • 举例,同一线程,可跨方法或类共用线程变量。

© 著作权归作者所有

共有 人打赏支持
脑丨残
粉丝 8
博文 59
码字总数 23267
作品 0
西安

暂无文章

分布式之抉择分布式锁

前言: 目前网上大部分的基于zookpeer,和redis的分布式锁的文章都不够全面。要么就是特意避开集群的情况,要么就是考虑不全,读者看着还是一脸迷茫。坦白说,这种老题材,很难写出新创意,博...

Java大蜗牛
9分钟前
0
0
rm: cannot remove `xxx’: Operation not permitted

rm: cannot remove `xxx': Operation not permitted可以先用lsattr xxx查看文件的隐藏属性。如果看到-----a-------的情况,可以用chattr -a xxx去除a属性,然后再进行删除就可以了....

殘留回憶
10分钟前
0
0
oracle 如何查看当前用户的表空间名称

如何查询当前用户的表空间名称?因为oracle建立索引,需要知道当前用户的表空间,查找了一下资料 --查询语法-- select default_tablespace from dba_users where username='登录用户' 如,...

youfen
14分钟前
0
0
MicroPython-TPYBoard开发板DIY小型家庭气象站

对于喜欢登山的人来说,都会非常关心自己所处的高度跟温度,海拔高度的测量方法,海拔测量一般常用的有两种方式,一是通过GPS全球定位系统,二是通过测出大气压,根据气压值算出海拔高度。 ...

bodasisiter
14分钟前
0
0
抓取沪A股票资金流向数据

library(rvest)mydata<-list()day1<-Sys.Date()day2<-Sys.Date()-7stock<-c("600695","600734","603693","601990","603650","603045","603895","600735","601999","603970","600619"......

cuyi
14分钟前
0
0
Java中mqtt消息队列发送和订阅消息

1.首先本地建立mqtt协议的服务器 2.直接上代码 package io.powerx.test;import java.util.Date;import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;import org.eclipse.p......

江湖鱼大虾
16分钟前
0
0
数据结构-树的学习

1. 相关连接 维基-二叉搜索树 维基-红黑树 思否-红黑树

liuyan_lc
18分钟前
0
0
Nginx upstream 负载均衡

Nginx upstream 负载均衡 了了情空 关注 2016.05.31 16:16* 字数 612 阅读 537评论 1喜欢 0 上周五同事跟我提一个需求,大概描述是酱紫:“我们现在终端都在访问同一台服务器,如果流量过大造...

linjin200
19分钟前
0
2
Dubbo 源码解读——自定义 Classloader 之 ExtensionLoader

众所周知,Dubbo 是阿里巴巴公司自主研发开源的一个高性能的服务框架(现已捐献给 Apache 基金会组织),应用之间可以通过 RPC 的方式来互相调用并返回结果。主要基于 Java 语言开发,它提供...

Ryan-瑞恩
27分钟前
0
0
Sonar Maven/IDEA集成(未完待续)

前言:在上一篇(SonarQube安装步骤)的基础上,我们来集成maven/IDEA 1.首先是集成maven(maven的安装配置就不多说了) 找到maven安装目录下-conf文件夹-setting.xml文件 然后添加以下配置信...

张艺兴女朋友
27分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部