java线程相关知识点有哪些

技术java线程相关知识点有哪些这篇文章主要讲解了“java线程相关知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java线程相关知识点有哪些”吧!cas c

本文主要讲解“与java线程相关的知识点有哪些”。本文的解释简单明了,易学易懂。请跟随边肖的思路一起学习和学习“java线程相关的知识点有哪些”!

00-1010读取当前值

计算结果值

将当前值与内存值进行比较。

更新新值

ABA问题,添加额外字段

底层原语锁定(硬件锁定信号)cmpxchg

00-1010对象头(markword,class point,在64位系统上,jvm打开时压缩为4字节,不打开时压缩为8字节),(数组长度-4字节)实例数据,以及对齐(通过填充系统总线位数来提高效率),如下图所示java线程相关知识点有哪些

00-1010新款-偏置锁-轻量锁(无锁、旋转锁、自适应旋转锁)-重量级锁

偏置锁定(默认延迟4秒以上)-在对象的标记字中添加指向锁定对象的指针。

轻量级锁——竞争线程通过cas竞争指向锁对象。

重量级锁定用户模式适用于系统锁定到内核模式,之后所有其他竞争线程都处于队列状态(减少资源消耗)。

锁定:通常发生在gc的情况下,所以此时降级是没有意义的。

锁消除:当引用不会被其他线程调用时,隐式消除内部锁。

锁定粗化:对于一组具有相同操作的对象,该值锁定最外层的操作(例如while(i100)}.})

超线程:一组算术逻辑单元,两组寄存器

同步实施过程

代码层:同步

源代码监视器进入监视器退出

锁定升级

锁定cmpxchg

cas compare and swap(exchange):

当程序读取数据时,它以块为单位读取数据,以提高效率(根据cpu,64字节)。

Cpu一级和二级缓存属于核心,三级缓存是共享的。

java线程相关知识点有哪些

volatile关键字的作用

线程可见性

如下所述,禁止代码重排。

内存屏障确保语句的顺序执行,底层仍然是锁。

写屏障易失性写操作写读屏障

读屏障易失性读操作读写屏障

00-1010强引用:对象o=新对象();

软引用: softreferenceObject软引用=新软引用(new object());当没有足够的堆空间时,它将被回收,这适合缓存。

弱引用: weakreference对象weak reference=new weak reference(new object());只要gc将被回收,它就适用于ThreadLocal.entry使用的弱引用,如一次性使用和缓存。使用ThreadLocal时,必须调用ThreadLocal.remove一次来释放映射的值,因为回收ThreadLocal时只会回收密钥,而不会回收条目。

虚拟引用:幻影引用对象幻影引用=新幻影引用(新对象(),新引用队列());管理堆外内存,如NIO和ZeroCopy。

感谢阅读,以上就是《java线程相关的知识点有哪些》的内容。学习完这篇文章,相信你对java线程相关的知识点有了更深的理解,具体用法还需要实践验证。在这里,边肖将为您推送更多关于知识点的文章,敬请关注!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/115172.html

(0)

相关推荐

  • 中庭是什么意思,中庭地白树栖鸦的中庭什么意思

    技术中庭是什么意思,中庭地白树栖鸦的中庭什么意思中庭:即庭中,庭院中中庭是什么意思。地白:指月光照在庭院的样子。
    译:中秋月光洒落中庭,清冷树枝安栖乌鸦,地上洁白,天空宁静。
    扩展资料:此诗是诗人在中秋佳节与朋友相聚时所

    生活 2021年10月24日
  • 如何利用Topshelf把.NET Core Generic Host管理的应用程序部署为Windows服务

    技术如何利用Topshelf把.NET Core Generic Host管理的应用程序部署为Windows服务本篇文章为大家展示了如何利用Topshelf把.NET Core Generic Host管理的应用程序部署

    攻略 2021年11月18日
  • oracle表优化方法教程

    技术oracle表优化方法教程这篇文章主要讲解了“oracle表优化方法教程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“oracle表优化方法教程”吧!1、建立实验表c

    攻略 2021年11月11日
  • 入门web前端开发必须知道的开发工具有哪些

    技术入门web前端开发必须知道的开发工具有哪些这篇文章主要介绍“入门web前端开发必须知道的开发工具有哪些”,在日常操作中,相信很多人在入门web前端开发必须知道的开发工具有哪些问题上存在疑惑,小编查阅了各式资料,整理出

    攻略 2021年11月5日
  • 二分查询

    技术二分查询 二分查询二分查询:package com.cc;/** * @Author: cc * @Create: 2021/12/20 * 二分查询实现步骤: * 1.前提:有已排序数组A (假设

    礼包 2021年12月22日
  • 怎么解决react link不跳转问题

    技术怎么解决react link不跳转问题这篇文章主要介绍了怎么解决react link不跳转问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    攻略 2021年11月26日