一、基础篇JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别 Java内存模型 内存可见性、重排序、顺序一致性、volatile、锁、final 垃圾回收 内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定 JVM参数及调优 Java对象模型 oop-klass、对象头 ...
分类:
编程语言 时间:
2018-03-23 10:30:01
阅读次数:
222
1. TCP提供的服务 我们知道TCP是一个面向连接、提供可靠数据数据传输服务的传输层协议。面向连接意味着发送端和接收端在交换数据前需要建立一个连接,和我们平常打电话一样,在通话前,需要拨号建立连接。为了提高TCP连接的可靠性,TCP提供了超时重发、流量控制、拥塞控制、报文校验、重排序、去除重复。 ... ...
分类:
其他好文 时间:
2018-03-21 15:02:00
阅读次数:
210
一、基础篇JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别 Java内存模型 内存可见性、重排序、顺序一致性、volatile、锁、final 垃圾回收 内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定 JVM参数及调优 Java对象模型 oop-klass、对象头 ...
分类:
编程语言 时间:
2018-03-19 10:21:31
阅读次数:
280
我们将根据JVM的内存模型探索java当中变量的可见性以及不同的java指令在并发时可能发生的指令重排序的情况。 内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再把需求明确一点,一个java线程对一个变量的更新怎么通知到另外一个线程呢?我们知道java当中的实例 ...
分类:
编程语言 时间:
2018-03-11 21:08:22
阅读次数:
211
先生成哈夫曼树,然后遍历树得到编码。 生成哈夫曼树: 每个字符对应一个权重初始化为一个节点,所有节点按照权重排序,然后选出两个权重最小的两个节点和创建一个新的节点,选出的两个节点作为新创建节点的左右孩子节点,新节点的权值为两个孩子节点的和,然后将新节点放入原来的没选取出的节点中重新排序,重复上述步骤 ...
分类:
其他好文 时间:
2018-03-10 15:58:57
阅读次数:
132
一、排序 SORT <key> 对一个数字值的key进行排序 1、alpha 对字符串类型的键进行排序 2、asc / desc redis 默认升序排序asc desc 与之相反 3、by 根据权重排序。 4、limit <从哪开始><娶几个> 5、get 通过get模式匹配后格式化 6、stor ...
分类:
编程语言 时间:
2018-03-10 12:00:57
阅读次数:
225
一、map 二、去重,排序,计数 例:蓝桥杯真题 http://newoj.acmclub.cn/contests/1258/problem/9 1659: 2018蓝桥杯培训-STL应用专题-day 3 map作业题4 1659: 2018蓝桥杯培训-STL应用专题-day 3 map作业题4 题 ...
分类:
编程语言 时间:
2018-03-08 20:18:19
阅读次数:
220
一、Synchronized的基本使用 Synchronized是Java中解决并发问题的一种最常用的方法,也是最简单的一种方法。Synchronized的作用主要有三个:(1)确保线程互斥的访问同步代码(2)保证共享变量的修改能够及时可见(3)有效解决重排序问题。从语法上讲,Synchronize ...
分类:
编程语言 时间:
2018-03-08 17:31:13
阅读次数:
213
深入理解java内存模型(一)——基础 深入理解java内存模型(二)——重排序 深入理解java内存模型(三)——顺序一致性 深入理解java内存模型(四)——volatile 深入理解java内存模型(五)——锁 深入理解java内存模型(六)——final 深入理解java内存模型(七)——总 ...
分类:
编程语言 时间:
2018-03-03 00:41:20
阅读次数:
228
elastic search6.2.2 实现搜索记录查询 ,类似新浪微博这种,同样的搜索记录后面时间点的会覆盖前面的(主要思路:关键词去重,然后按时间排序) 先创建索引 插入搜索记录 写入文档后的搜索记录可视界面(以按时间排序) 下面要读取出来了 搜索结果: ...
分类:
编程语言 时间:
2018-02-28 21:38:32
阅读次数:
201