ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java专业术语

2019-11-21 18:01:43  阅读:270  来源: 互联网

标签:包中 Java util concurrent 线程 集合 java 专业术语


  1. StringBuilder和StringBuffer的区别
    StringBuilder是非线程安全的,StringBuffer是线程安全的。具体可以看一下StringBuffer的源码,会发现StringBuffer里的方法都被synchronized修饰。

  2. 什么是线程安全
    多线程在访问同一资源的情况下,可能会产生数据缺失、数据不一致等问题。

  3. 什么是死锁
    死锁指当某一个线程A正在占用临界区资源的使用权,并须要另外一临界区资源才能完成,而另一临界资源被线程B占有,且需要线程A资源才能完成。会导致这两个线程都在等待对方释放临界资源,而互不相让,从而产生死锁。存在临界资源是产生死锁的必要条件。

  4. synchronized的实现原理
    保证一个共享资源在同一时间只会被一个线程访问到时,可以在代码中使用synchronized关键字对类或者对象加锁。

5.synchronized和volatile区别
使用volatile关键字可是使线程之间的数据修改可见。并可以禁止指令重排

  1. synchronized的锁优化处理
    锁消除

  2. JMM 是什么
    java memory model
    java内存模型?

8.java并发包都有哪些
java.util.concurrent包
包括 locks、atomic、executor、collections、tools
locks部分:包含在java.util.concurrent.locks包中,提供显式锁(互斥锁和速写锁)相关功能;

atomic部分:包含在java.util.concurrent.atomic包中,提供原子变量类相关的功能,是构建非阻塞算法的基础;

executor部分:散落在java.util.concurrent包中,提供线程池相关的功能;

collections部分:散落在java.util.concurrent包中,提供并发容器相关功能;

tools部分:散落在java.util.concurrent包中,提供同步工具类,如信号量、闭锁、栅栏等功能;

  1. 什么是fail-fast
    快速失败
    是java集合的一种错误检测机制,当多个线程对部分集合进行结构上的改变操作时,可能会导致fial-fast,会抛出ConcurrentModificationException。

  2. 什么是fail-safe
    fail-safe是集合容器,在遍历时不是直接在集合内容上访问的,而是先复制原有集合内容,在拷贝的集合上进行遍历。

  3. 什么是CopyOnWrite
    往集合里添加元素时,不直接添加,而是先想当前集合进行Copy ,然后往新的集合里添加元素。
    比如CopyOnWriteArrayList

  4. 什么是AQS
    AQS(AbstractQueuedSynchronizer)是实现依赖于先进先出 (FIFO) 等待队列的阻塞锁和相关同步器(信号量、事件,等等)提供一个框架,它是一个依靠单个原子 int 值来表示状态的大多数同步器的一个基础类

  5. 什么是CAS
    比较并替换
    乐观锁技术,当多个线程尝试使用CAS同时更新同一个变量时,只有其中一个线程能更新变量的值,而其它线程都失败,失败的线程并不会被挂起,而是被告知这次竞争中失败,并可以再次尝试

未完待续

标签:包中,Java,util,concurrent,线程,集合,java,专业术语
来源: https://www.cnblogs.com/magicya/p/11907210.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有