当前位置: 首页 > news >正文

线程小记

1、造成线程阻塞的方法?

阻塞线程的方法:join、yield、sleep 和Object的wait()方法

2、Java的守护进程(后台进程)?

设置线程为后台进程运行:setDaemon(true) 如果一个进程中只有后台线程在运行,这个进程就会结束。

3、造成线程阻塞后,线程回到哪个状态了?

通过join、yield、sleep造成线程阻塞后是回到了就绪状态

3、哪些状态之后是回到就绪状态?

 a)通过join、yield、sleep造成线程阻塞后是回到了就绪状态

 b)遇到synchronized后

 c)遇到Object的等待wait方法后

4、sleep会释放锁吗?

 sleep不会释放锁【它会抱着锁睡觉】

5、线程都有哪些状态?具体是怎么运行的?

线程有:创建、就绪、运行、阻塞、终止。5种状态

1.通过new关键字创建后,进入到新生状态

2.调用start后进入就绪状态

3.CPU调度到本线程后,本线程开始执行。进入到运行状态

4.运行中遇到join,yield,sleep造成阻塞,进入阻塞状态。阻塞完成后,又回到就绪状态

5.线程正常执行完,或者遇到异常终止后,进入死亡状态

6、终止线程有哪几种方法?

 线程调用 stop()方法、destory()方法或 run()方法执行结束后,线程即处于死亡状态。处于死亡状态的线程不具有继续运行的能力。

 

 

关于线程调度的,我推荐可以去了解下ReentrantLock 重入锁配合Condition使用,非常不错。 后面有时间我也会写个重入锁的简单使用介绍。

相关文章:

  • JAVA JDK1.8 时间戳与时间格式化 实用工具类
  • 单例模式 之内部类延迟加载,(多)线程安全
  • Springboot 用session监听器统计在线用户数量
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • JAVA 责任链设计模式
  • JAVA回调函数简单讲解 CallBack
  • JAVA HttpClient 远程调用接口doGet、doPost工具类
  • JAVA 接口签名sign生成 工具类
  • mybatis-config配置文件各项简单介绍
  • Springboot整合Mybatis增删查改、连接MYSQL数据库及配置druid连接池
  • JAVA 模板设计模式
  • Springboot 最简单的结合MYSQL数据实现EXCEL表格导出及数据导入
  • Springboot中使用GSON报错 An attempt was made to call the method com.google.gson.GsonBuilder.setLenient
  • IDEA @AutoWired注入bean 出现红色波浪线
  • JAVA 最常用实用的正则表达式校验
  • 9月CHINA-PUB-OPENDAY技术沙龙——IPHONE
  • Angular6错误 Service: No provider for Renderer2
  • Material Design
  • pdf文件如何在线转换为jpg图片
  • ucore操作系统实验笔记 - 重新理解中断
  • Vue小说阅读器(仿追书神器)
  • 每天一个设计模式之命令模式
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 微信开源mars源码分析1—上层samples分析
  • 我的业余项目总结
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 一道面试题引发的“血案”
  • 一个JAVA程序员成长之路分享
  • 原生Ajax
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​MySQL主从复制一致性检测
  • ​决定德拉瓦州地区版图的关键历史事件
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (力扣)循环队列的实现与详解(C语言)
  • (一)python发送HTTP 请求的两种方式(get和post )
  • (转)VC++中ondraw在什么时候调用的
  • (转载)hibernate缓存
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .bat批处理(六):替换字符串中匹配的子串
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .NET CLR Hosting 简介
  • .NET delegate 委托 、 Event 事件
  • .NET Framework .NET Core与 .NET 的区别
  • .NET gRPC 和RESTful简单对比
  • .NET MVC之AOP
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .NET/C# 使窗口永不获得焦点
  • .NET与 java通用的3DES加密解密方法
  • .Net中的集合
  • .pub是什么文件_Rust 模块和文件 - 「译」
  • @AutoConfigurationPackage的使用