这篇文章主要给大家讲解序列化和反序列化。 序列化是网络通信中非常重要的一个机制,好的序列化方式能够直接影响数据传输的性能。 序列化 所谓的序列化,就是把一个对象,转化为某种特定的形式,然后以 ...
面试题:String a ab String b a b a b 是否相等 面试考察点 考察目的: 考察对JVM基础知识的理解,涉及到常量池 JVM运行时数据区等。 考察范围: 工作 到 年。 背景知识 要回答这个问题,需要搞明白两个最基本的问题 String a ab ,在JVM中发生了什么 String b a b ,底层是如何实现 JVM的运行时数据 首先,我们一起来复习一下JVM的运行时 ...
2021-11-07 17:20 4 979 推荐指数:
这篇文章主要给大家讲解序列化和反序列化。 序列化是网络通信中非常重要的一个机制,好的序列化方式能够直接影响数据传输的性能。 序列化 所谓的序列化,就是把一个对象,转化为某种特定的形式,然后以 ...
1.线程池的引入 引入的好处: 1)提升性能。创建和消耗对象费时费CPU资源 2)防止内存过度消耗。控制活动线程的数量,防止并发线程过多。 使用条件: 假设在一台服务器完成一项任务的时间为T T1 创建线程的时间 T2 在线程中执行任务的时间 ...
的源码串起来理解,相辅相成 AQS的链接贴在下方👇👇👇 全网最详细的AbstractQueuedS ...
javascript中的var关键字,作用很简单。用于声明一个变量。如果不给声明的变量赋值则为undefined. var test = 'test'; var t; 此时test值为,'test', t 的值为undefinde. 似乎很简单,并没有什么特殊的地方。只要学过js的,都知道 ...
前两期我们已经掌握了AQS的基本结构、以及AQS是如何释放和获取资源的。其实到这里,我们已经掌握了AQS作为同步器的全部功能 不过,有些情况使用同步功能不够灵活,所以AQS又引入了操作系统中的另 ...
上期的《全网最详细的AbstractQueuedSynchronizer(AQS)源码剖析(一)AQS基础》中介绍了什么是AQS,以及AQS的基本结构。有了这些概念做铺垫之后,我们就可以正式地看看AQS是如何通过state(以下也称资源)和同步队列,实现线程之间的同步功能了 那么线程 ...
AbstractQueuedSynchronizer(以下简称AQS)的内容确实有点多,博主考虑再三,还是决定把它拆成三期。原因有三,一是放入同一篇博客势必影响阅读体验,而是为了表达对这个伟大基 ...
前言 上篇我们讲到了 Elasticsearch 全文检索的原理《别只会搜日志了,求你懂点检索原理吧》,通过在本地搭建一套 ES 服务,以多个案例来分析了 ES 的原理以及基础使用。这次我们来讲下 ...