会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
flydean程序那些事
最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现! www.flydean.com
首页
新随笔
管理
上一页
1
···
29
30
31
32
33
34
35
36
37
···
52
下一页
2020年7月18日
看动画学算法之:排序-选择排序
摘要: 简介 选择排序就是从数组中选择出来最大或者最小的元素,然后将其和队首或者队尾的元素进行交互。 因为首先做的是一个选择的过程,所以叫做选择排序。 选择排序的例子 假如我们有一个数组:29,10,14,37,20,25,44,15,怎么对它进行选择排序呢? 先看一个动画: 选择排序的原理如下: 8个数字
阅读全文
posted @ 2020-07-18 20:04 flydean
阅读(444)
评论(0)
推荐(0)
2020年7月17日
计算机揭秘之:网络分类和性能分析
摘要: 简介 程序员天天都在写代码,关注的都是更高层次的封装,今天我们换个思路,让程序那些事来带你看一看隐藏在表象之下的网络和他们的性能分析。 本文主要涉及5个模块,分别是网络七层协议,延迟与带宽,IP,TCP,UDP。 OSI网络七层协议 在讲网络之前,一定要提到OSI网络七层协议。 OSI是Open S
阅读全文
posted @ 2020-07-17 09:49 flydean
阅读(995)
评论(1)
推荐(1)
2020年7月16日
JVM详解之:运行时常量池
摘要: 简介 JVM在运行的时候会对class文件进行加载,链接和初始化的过程。class文件中定义的常量池在JVM加载之后会发生什么神奇的变化呢?快来看一看吧。 class文件中的常量池 之前我们在讲class文件的结构时,提到了每个class文件都有一个常量池,常量池中存了些什么东西呢? 字符串常量,类
阅读全文
posted @ 2020-07-16 09:06 flydean
阅读(7113)
评论(1)
推荐(4)
2020年7月15日
JVM详解之:java class文件的密码本
摘要: 简介 一切的一切都是从javac开始的。从那一刻开始,java文件就从我们肉眼可分辨的文本文件,变成了冷冰冰的二进制文件。 变成了二进制文件是不是意味着我们无法再深入的去了解java class文件了呢?答案是否定的。 机器可以读,人为什么不能读?只要我们掌握java class文件的密码表,我们可
阅读全文
posted @ 2020-07-15 09:24 flydean
阅读(1109)
评论(2)
推荐(1)
2020年7月14日
一张PDF了解JDK10 GC调优秘籍-附PDF下载
摘要: 简介 今天我们讲讲JDK10中的JVM GC调优参数,JDK10中JVM的参数总共有1957个,其中正式的参数有658个。 其实JDK10跟JDK9相比没有太大的变化,一个我们可以感受到的变化就是引入了本地变量var。 为了方便大家的参考,特意将JDK10中的GC参数总结成了一张PDF,这个PDF在
阅读全文
posted @ 2020-07-14 09:16 flydean
阅读(319)
评论(0)
推荐(0)
2020年7月13日
看动画学算法之:排序-插入排序
摘要: 简介 插入排序就是将要排序的元素插入到已经排序的数组中,从而形成一个新的排好序的数组。 这个算法就叫做插入排序。 插入排序的例子 同样的,假如我们有一个数组:29,10,14,37,20,25,44,15,怎么对它进行插入排序呢? 先看一个插入排序的动画,对它有个直观的了解: 我们来分析一下排序的流
阅读全文
posted @ 2020-07-13 09:15 flydean
阅读(554)
评论(1)
推荐(0)
2020年7月12日
看动画学算法之:排序-冒泡排序
摘要: 简介 排序可能是所有的算法中最最基础和最最常用的了。排序是一个非常经典的问题,它以一定的顺序对一个数组(或一个列表)中的项进行重新排序。 排序算法有很多种,每个都有其自身的优点和局限性。 今天我们来学习最最简单的冒泡排序算法。 冒泡排序的原理 冒泡排序的原理很简单,我们想象一下一个一个的气泡上浮的过
阅读全文
posted @ 2020-07-12 08:32 flydean
阅读(943)
评论(1)
推荐(0)
2020年7月11日
如果你想写自己的Benchmark框架
摘要: 简介 使用过JMH的同学一定会惊叹它的神奇。JMH作为一个优秀的Benchmark框架带给了我们无数的欢乐。作为一个有极客精神的程序员,那么有没有想过去自己实现一个Benchmark框架呢? 在实现Benchmark框架的时候有需要注意些什么问题呢?快来一起看看吧。 八条军规 这里叫军规实际上不合适
阅读全文
posted @ 2020-07-11 11:00 flydean
阅读(1048)
评论(1)
推荐(0)
2020年7月10日
JVM中栈的frames详解
摘要: 简介 我们知道JVM运行时数据区域专门有一个叫做Stack Area的区域,专门用来负责线程的执行调用。那么JVM中的栈到底是怎么工作的呢?快来一起看看吧。 JVM中的栈 小师妹:F师兄,JVM为每个线程的运行都分配了一个栈,这个栈到底是怎么工作的呢? 小师妹,我们先看下JVM的整体运行架构图: 我
阅读全文
posted @ 2020-07-10 08:37 flydean
阅读(1706)
评论(3)
推荐(2)
2020年7月9日
小师妹学JVM之:Dirty cards和PLAB
摘要: 简介 分代垃圾回收器在进行minor GC的时候会发生什么操作呢?有没有什么提高效率的手段呢?今天我们和小师妹一起来了解一下垃圾回收中的Dirty cards和PLAB 分代收集器中的空间划分 小师妹:F师兄,能再讲讲分代垃圾收集器中的空间划分吗? 分代垃圾回收器中的Eden,Old和Survivo
阅读全文
posted @ 2020-07-09 09:04 flydean
阅读(997)
评论(1)
推荐(0)
2020年7月8日
小师妹学JVM之:JVM中的Safepoints
摘要: 简介 java程序员都听说过GC,大家也都知道GC的目的是扫描堆空间,然后将那些标记为删除的对象从堆空间释放,以提升可用的堆空间。今天我们会来探讨一下隐藏在GC背后的一个小秘密Safepoints。 GC的垃圾回收器 小师妹:F师兄,GC的垃圾回收器的种类为什么会有这么多呀?使用起来不是很麻烦。并且
阅读全文
posted @ 2020-07-08 09:17 flydean
阅读(1029)
评论(1)
推荐(0)
2020年7月7日
小师妹学JVM之:cache line对代码性能的影响
摘要: 简介 读万卷书不如行万里路,讲了这么多assembly和JVM的原理与优化,今天我们来点不一样的实战。探索一下怎么使用assembly来理解我们之前不能理解的问题。 一个奇怪的现象 小师妹:F师兄,之前你讲了那么多JVM中JIT在编译中的性能优化,讲真的,在工作中我们真的需要知道这些东西吗?知道这些
阅读全文
posted @ 2020-07-07 09:08 flydean
阅读(908)
评论(2)
推荐(0)
2020年7月6日
区块链系列教程之:比特币的问题
摘要: 简介 比特币网络是中本聪作为一个实验性的网络提出来并运行的。没想到的是这一个实验性质的网络,居然成了现在虚拟货币世界的龙头老大。这个结局估计是中本聪本人都没有想到过的。 既然是一个实验性的网络,那么比特币网络中又隐藏着哪些痛点呢?快来看看吧。 攻击比特币网络 比特币网络是基于P2P架构的。在整个比特
阅读全文
posted @ 2020-07-06 08:59 flydean
阅读(869)
评论(1)
推荐(0)
2020年7月5日
JIT的Profile神器JITWatch
摘要: 简介 老是使用命令行工具在现代化社会好像已经跟不上节奏了,尤其是在做JIT分析时,使用LogCompilation输出的日志实在是太大了,让人望而生畏。有没有什么更加简便的方法来分析JIT日志呢?快来和小师妹一起来学习JITWatch吧。 什么是JIT 小师妹,F师兄,JIT就是Just In Ti
阅读全文
posted @ 2020-07-05 17:17 flydean
阅读(1463)
评论(2)
推荐(0)
2020年7月4日
深入理解编译优化之循环展开和粗化锁
摘要: 简介 之前在讲JIT的时候,有提到在编译过程中的两种优化循环展开和粗化锁,今天我们和小师妹一起从Assembly的角度来验证一下这两种编译优化方法,快来看看吧。 循环展开和粗化锁 小师妹:F师兄,上次你讲到在JIT编译的过程中会进行一些编译上面的优化,其中就有循环展开和粗化锁。我对这两种优化方式很感
阅读全文
posted @ 2020-07-04 09:01 flydean
阅读(1015)
评论(0)
推荐(1)
上一页
1
···
29
30
31
32
33
34
35
36
37
···
52
下一页
公告