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

云南网站定制seo优化技术排名

云南网站定制,seo优化技术排名,网站建设推广是什么工作,wordpress开发视频教程目录 16、CAS 的问题 17、什么是 Future#xff1f; 18、什么是 AQS 19、AQS 支持两种同步方式#xff1a; 20、ReadWriteLock 是什么 21、FutureTask 是什么 22、synchronized 和 ReentrantLock 的区别 23、什么是乐观锁和悲观锁 24、线程 B 怎么知道线程 A 修改了…目录 16、CAS 的问题 17、什么是 Future 18、什么是 AQS 19、AQS 支持两种同步方式 20、ReadWriteLock 是什么 21、FutureTask 是什么 22、synchronized 和 ReentrantLock 的区别 23、什么是乐观锁和悲观锁 24、线程 B 怎么知道线程 A 修改了变量 25、synchronized、volatile、CAS 比较 26、sleep 方法和 wait 方法有什么区别? 27、ThreadLocal 是什么有什么用 28、为什么 wait()方法和 notify()/notifyAll()方法要在同步块中被调用 29、多线程同步有哪几种方法 30、线程的调度策略 31、ConcurrentHashMap 的并发度是什么 32、Linux 环境下如何查找哪个线程使用 CPU 最长 16、CAS 的问题 1、CAS 容易造成 ABA 问题 一个线程 a 将数值改成了 b接着又改成了 a此时 CAS 认为是没有变化其实是已经变化过了而这个问题的解决方案可以使用版本号标识每操作一次version 加 1。在 java5 中已经提供了 AtomicStampedReference 来解决问题。 2、不能保证代码块的原子性 CAS 机制所保证的知识一个变量的原子性操作而不能保证整个代码块的原子性。比如需要保证 3 个变量共同进行原子性的更新就不得不使用 synchronized 了。 3、CAS 造成 CPU 利用率增加 之前说过了 CAS 里面是一个循环判断的过程如果线程一直没有获取到状态cpu资源会一直被占用。 17、什么是 Future 在并发编程中我们经常用到非阻塞的模型在之前的多线程的三种实现中不管是继承 thread 类还是实现 runnable 接口都无法保证获取到之前的执行结果。通过实现 Callback 接口并用 Future 可以来接收多线程的执行结果。Future 表示一个可能还没有完成的异步任务的结果针对这个结果可以添加Callback 以便在任务执行成功或失败后作出相应的操作。 18、什么是 AQS AQS 是 AbustactQueuedSynchronizer 的简称它是一个 Java 提高的底层同步工具类用一个 int 类型的变量表示同步状态并提供了一系列的 CAS 操作来管理这个同步状态。 AQS 是一个用来构建锁和同步器的框架使用 AQS 能简单且高效地构造出应用广泛的大量的同步器比如我们提到的 ReentrantLockSemaphore其他的诸如ReentrantReadWriteLockSynchronousQueueFutureTask 等等皆是基于AQS 的。 19、AQS 支持两种同步方式 1、独占式 2、共享式 这样方便使用者实现不同类型的同步组件独占式如 ReentrantLock共享式如SemaphoreCountDownLatch组合式的如 ReentrantReadWriteLock。总之AQS 为使用提供了底层支撑如何组装实现使用者可以自由发挥。 20、ReadWriteLock 是什么 首先明确一下不是说 ReentrantLock 不好只是 ReentrantLock 某些时候有局限。如果使用 ReentrantLock可能本身是为了防止线程 A 在写数据、线程 B 在读数据造成的数据不一致但这样如果线程 C 在读数据、线程 D 也在读数据读数据是不会改变数据的没有必要加锁但是还是加锁了降低了程序的性能。因为这个才诞生了读写锁 ReadWriteLock。ReadWriteLock 是一个读写锁接口ReentrantReadWriteLock 是 ReadWriteLock 接口的一个具体实现实现了读写的分离读锁是共享的写锁是独占的读和读之间不会互斥读和写、写和读、写和写之间才会互斥提升了读写的性能。 21、FutureTask 是什么 这个其实前面有提到过FutureTask 表示一个异步运算的任务。FutureTask 里面可以传入一个 Callable 的具体实现类可以对这个异步运算的任务的结果进行等待获取、判断是否已经完成、取消任务等操作。当然由于 FutureTask 也是Runnable 接口的实现类所以 FutureTask 也可以放入线程池中。 22、synchronized 和 ReentrantLock 的区别 synchronized 是和 if、else、for、while 一样的关键字ReentrantLock 是类这是二者的本质区别。既然 ReentrantLock 是类那么它就提供了比synchronized 更多更灵活的特性可以被继承、可以有方法、可以有各种各样的类变量ReentrantLock 比 synchronized 的扩展性体现在几点上 1、ReentrantLock 可以对获取锁的等待时间进行设置这样就避免了死锁 2、ReentrantLock 可以获取各种锁的信息 3、ReentrantLock 可以灵活地实现多路通知 另外二者的锁机制其实也是不一样的。ReentrantLock 底层调用的是 Unsafe 的park 方法加锁synchronized 操作的应该是对象头中 mark word这点我不能确定。 23、什么是乐观锁和悲观锁 1、乐观锁就像它的名字一样对于并发间操作产生的线程安全问题持乐观状态乐观锁认为竞争不总是会发生因此它不需要持有锁将比较-替换这两个动作作为一个原子操作尝试去修改内存中的变量如果失败则表示发生冲突那么就应该有相应的重试逻辑。 2、悲观锁还是像它的名字一样对于并发间操作产生的线程安全问题持悲观状态悲观锁认为竞争总是会发生因此每次对某资源进行操作时都会持有一个独占的锁就像 synchronized不管三七二十一直接上了锁就操作资源了。 24、线程 B 怎么知道线程 A 修改了变量 1、volatile 修饰变量 2、synchronized 修饰修改变量的方法 3、wait/notify 4、while 轮询 25、synchronized、volatile、CAS 比较 1、synchronized 是悲观锁属于抢占式会引起其他线程阻塞。 2、volatile 提供多线程共享变量可见性和禁止指令重排序优化。 3、CAS 是基于冲突检测的乐观锁非阻塞 26、sleep 方法和 wait 方法有什么区别? 这个问题常问sleep 方法和 wait 方法都可以用来放弃 CPU 一定的时间不同点在于如果线程持有某个对象的监视器sleep 方法不会放弃这个对象的监视器wait 方法会放弃这个对象的监视器 27、ThreadLocal 是什么有什么用 ThreadLocal 是一个本地线程副本变量工具类。主要用于将私有线程和该线程存放的副本对象做一个映射各个线程之间的变量互不干扰在高并发场景下可以实现无状态的调用特别适用于各个线程依赖不通的变量值完成操作的场景。简单说 ThreadLocal 就是一种以空间换时间的做法在每个 Thread 里面维护了一个以开地址法实现的 ThreadLocal.ThreadLocalMap把数据进行隔离数据不共享自然就没有线程安全方面的问题了。 28、为什么 wait()方法和 notify()/notifyAll()方法要在同步块中被调用 这是 JDK 强制的wait()方法和 notify()/notifyAll()方法在调用前都必须先获得对象的锁 29、多线程同步有哪几种方法 Synchronized 关键字Lock 锁实现分布式锁等。 30、线程的调度策略 线程调度器选择优先级最高的线程运行但是如果发生以下情况就会终止线程的运行 1、线程体中调用了 yield 方法让出了对 cpu 的占用权利 2、线程体中调用了 sleep 方法使线程进入睡眠状态 3、线程由于 IO 操作受到阻塞 4、另外一个更高优先级线程出现 5、在支持时间片的系统中该线程的时间片用完 31、ConcurrentHashMap 的并发度是什么 ConcurrentHashMap 的并发度就是 segment 的大小默认为 16这意味着最多同时可以有 16 条线程操作 ConcurrentHashMap这也是ConcurrentHashMap 对 Hashtable 的最大优势任何情况下Hashtable 能同时有两条线程获取 Hashtable 中的数据吗 32、Linux 环境下如何查找哪个线程使用 CPU 最长 1、获取项目的 pidjps 或者 ps -ef | grep java这个前面有讲过 2、top -H -p pid顺序不能改变 要想了解更多 千题千解·Java面试宝典_时光の尘的博客-CSDN博客
http://www.w-s-a.com/news/839155/

相关文章:

  • 网站设计 知识产权湖北网站建设xiduyun
  • 猫咪网站模版下载中国风 古典 红色 网站源代码
  • 个人网站备案模板制作网站首页
  • 潍坊正规建设网站网站建设设计作业
  • 推荐一下网站谢谢辽宁住房城乡建设部官方网站
  • 网站文件大小英选 网站开发
  • 济南建网站哪家好wordpress编辑器排行
  • 在福州做搬家网站多少钱画册设计网站有哪些
  • 如何让别人浏览我做的网站哪些方法可以建设网站
  • 网站建设与管理网络推广的优点
  • 美食网站的设计与制作做网站的电销话术
  • 中国档案网站建设现状研究陕西建设厅执业资格注册中心网站
  • 网站建设的内容管理怎么用ps切片在dw里做网站
  • 建设婚恋网站用什么搭建涿州网站开发
  • 做知识内容的网站与app哈尔滨哪里有做网站的
  • 青岛企业网站建站模板百度网站建设推广
  • 做360网站中保存的图片存在哪里个人建立网站要多少钱
  • 网站安装部署无锡做网站的公司
  • 怎么将网站做成小程序安装wordpress到服务器
  • 企业网站建设的四大因素沈阳网站建设招标公司
  • wordpress仿站开发公司网站策划宣传
  • 金乡县网站开发网站开发三个流程
  • qq空间网站是多少纺织网站建设方案
  • 建设微网站项目报告网站优化难吗
  • 做网站需要自己上传产品吗企业网站系统设计
  • wordpress个人中心济南网站建设和优化
  • 网站pc端网址和手机端网址建设牡丹江 网站建设
  • 苏州新区城乡建设网站人才招聘网站开发
  • 一般网站是怎么做的威远移动网站建设
  • 赣州网站开发公司怎么才能设计好一个网站