自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序那些事

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧,尽在程序那些事!...

原创 一张PDF了解JDK9 GC调优秘籍-附PDF下载
原力计划

JDK9 GC调优秘籍,一张PDF就够了!

2020-06-30 06:50:24 5509 1

原创 小师妹学JVM之:JIT中的PrintAssembly
原力计划

想不想了解JVM最最底层的运行机制?想不想从本质上理解java代码的执行过程?想不想对你的代码进行进一步的优化和性能提升? 如果你的回答是yes。那么这篇文章非常适合你,因为本文将会站在离机器码最近的地方来观看JVM的运行原理:Assembly。

2020-06-29 07:27:38 5587 2

原创 揭秘!中国人一定要知道的北斗卫星系统
原力计划

北斗系统到底是什么?北斗一号,二号三号有什么区别?它的主要作用和它是怎么工作的呢?是时候了解中国自己的高科技了!

2020-06-28 06:45:10 8317 4

原创 区块链系列教程之:比特币中的挖矿
原力计划

我们知道比特币就是挖矿产生的,那么在比特币网络中,挖矿有什么特点呢?怎么分配挖矿收入呢?在这篇文章中你都能找到答案。

2020-06-26 11:15:55 7186 2

原创 小师妹学JVM之:java的字节码byte code简介
原力计划

Byte Code也叫做字节码,是连接java源代码和JVM的桥梁,源代码编译成为字节码,而字节码又被加载进JVM中运行。字节码怎么生成,怎么查看字节码,隐藏在Byte Code背后的秘密是什么呢?快跟小师妹一起来看看吧。

2020-06-25 10:10:08 6186 2

原创 小师妹学JVM之:JIT中的PrintCompilation
原力计划

上篇文章我们讲到了JIT中的LogCompilation,将编译的日志都收集起来,存到日志文件里面,并且详细的解释了LogCompilation日志文件中的内容定义。今天我们再和小师妹一起学习LogCompilation的姊妹篇PrintCompilation,看看都有什么妙用吧。

2020-06-24 08:58:07 8946 2

原创 八张图彻底了解JDK8 GC调优秘籍-附PDF下载
原力计划

你和GC调试专家之间就差一张PDF! 为了更好的让大家理解JDK8中 GC的调优的秘籍,这里特意准备了八张图。在本文的最后,还附带了一个总结的PDF all in one文档,大家把PDF下载回去,遇到问题就看两眼,不美吗?

2020-06-23 07:14:22 6144 3

原创 区块链系列教程之:比特币中的网络和区块链
原力计划

比特币的底层就是区块链技术,区块链也是因为比特币而广为人知的。和其他的区块链技术相比,比特币的区块链有什么特征呢?作为去区块链的鼻祖,又有什么与众不同的特性呢?快来跟我们一起看看吧。

2020-06-22 07:13:55 6460 4

原创 从印度兵力分布聊聊Mybatis中#和$的区别

文章目录简介举个例子查询举例#{id}的特点${id}的特点总结 简介 大家在使用Mybatis的过程中可能都会自己去写SQL语句,并且需要向SQL语句传入参数。 但是在Mybatis中,传参的语法有两种,#{name} 和 ${name},两者有什么区别呢?一起来看看吧。 举个例子 最近印度比较...

2020-06-21 11:17:47 8540 4

原创 区块链系列教程之:比特币的钱包与交易
原力计划

钱包在比特币中是做什么的呢?比特币的交易又有什么特点呢?怎么才能伪造比特币的交易呢?今天和大家一起学习一下比特币中的钱包和交易。

2020-06-20 07:25:15 8926 3

原创 小师妹学JVM之:JIT中的LogCompilation
原力计划

我们知道在JVM中为了加快编译速度,引入了JIT即时编译的功能。那么JIT什么时候开始编译的,又是怎么编译的,作为一个高傲的程序员,有没有办法去探究JIT编译的秘密呢?答案是有的,今天和小师妹一起带大家来看一看这个编译背后的秘密。

2020-06-19 07:04:05 4879 4

原创 小师妹学JVM之:JDK14中JVM的性能优化
原力计划

上一篇文章我们讲到了JVM为了提升解释的性能,引入了JIT编译器,今天我们再来从整体的角度,带小师妹看看JDK14中的JVM有哪些优化的方面,并且能够从中间得到那些启发。

2020-06-18 06:51:14 6323 4

原创 小师妹学JVM之:深入理解JIT和编译优化-你看不懂系列
原力计划

小师妹已经学完JVM的简单部分了,接下来要进入的是JVM中比较晦涩难懂的概念,这些概念是那么的枯燥乏味,甚至还有点惹人讨厌,但是要想深入理解JVM,这些概念是必须的,我将会尽量尝试用简单的例子来解释它们,但一定会有人看不懂,没关系,这个系列本不是给所有人看的。

2020-06-17 06:45:17 4376 6

原创 小师妹学JVM之:GC的垃圾回收算法
原力计划

JVM的重要性不言而喻了,如果把java的应用程序比作一辆跑车,那么JVM就是这辆车的发动机,没有它,java程序就成了空中楼阁,无根浮萍。而在JVM中有一块内存区域叫做运行时数据区域,存储了运行时所需要的所有对象,而Heap Area则是其中最大的一块。 内存毕竟不是无限的,所以就需要一种机制...

2020-06-16 07:10:36 6369 6

原创 小师妹学JVM之:JVM的架构和执行过程
原力计划

JVM也叫Java Virtual Machine,它是java程序运行的基础,负责将java bytecode转换成为适合在各个不同操作系统中运行的机器代码并运行。今天我们和小师妹一起走进java的核心JVM,领略java在设计上的哲学。

2020-06-15 08:53:17 4262 10

原创 小师妹学JavaIO之:用Selector来发好人卡
原力计划

文章目录简介Selector介绍创建Selector注册Selector到Channel中SelectionKeyselector 和 SelectionKey总的例子总结 简介 NIO有三宝:Buffer,Channel,Selector少不了。本文将会介绍NIO三件套中的最后一套Select...

2020-06-14 08:52:00 3906 4

原创 小师妹学JavaIO之:NIO中那些奇怪的Buffer
原力计划

我打赌,你肯定没听说过这些Buffer!如果你知道,请允许我叫一声大神!

2020-06-13 08:00:53 4371 3

原创 小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下
原力计划

文章目录简介虚拟地址空间详解MappedByteBufferMapModeMappedByteBuffer的最大值MappedByteBuffer的使用MappedByteBuffer要注意的事项总结 简介 大大大,我要大!小师妹要读取的文件越来越大,该怎么帮帮她,让程序在性能和速度上面得到平衡呢...

2020-06-12 09:04:00 4338 3

原创 小师妹学JavaIO之:NIO中Channel的妙用
原力计划

小师妹,你还记得我们使用IO和NIO的初心吗? 小师妹:F师兄,使用IO和NIO不就是为了让生活更美好,世界充满爱吗?让我等程序员可以优雅的将数据从一个地方搬运到另外一个地方。利其器,善其事,才有更多的时间去享受生活呀。 善,如果将数据比做人,IO,NIO的目的就是把人运到美国。 小师妹:F...

2020-06-11 06:23:25 6774 4

原创 小师妹学JavaIO之:Buffer和Buff
原力计划

小师妹在学习NIO的路上越走越远,唯一能够帮到她的就是在她需要的时候给她以全力的支持。什么都不说了,今天介绍的是NIO的基础Buffer。老铁给我上个Buff。

2020-06-10 06:01:44 7754 3

原创 小师妹学JavaIO之:文件File和路径Path
原力计划

文件和路径有什么关系?文件和路径又隐藏了什么秘密?在文件系统的管理下,创建路径的方式又有哪些?今天F师兄带小师妹再给大家来一场精彩的表演。

2020-06-09 06:34:09 4363 2

原创 小师妹学JavaIO之:文件系统和WatchService
原力计划

小师妹这次遇到了监控文件变化的问题,F师兄给小师妹介绍了JDK7 nio中引入的WatchService,没想到又顺道普及了一下文件系统的概念,万万没想到。

2020-06-08 07:09:50 4407 3

原创 小师妹学JavaIO之:目录还是文件
原力计划

目录和文件傻傻分不清楚,目录和文件的本质到底是什么?在java中怎么操纵目录,怎么遍历目录。本文F师兄会为大家一一讲述。

2020-06-07 07:34:16 4771 3

原创 终于我用JOL打破了你对java对象的所有想象
原力计划

使用面向对象的编程语言的好处就是,虽然没有女朋友,但是仍然可以new对象出来。Java是面向对象的编程语言,我们天天都在使用java来new对象,但估计很少有人知道new出来的对象到底长的什么样子,是美是丑到底符不符合我们的要去? 对于普通的java程序员来说,可能从来没有考虑过java中对象的...

2020-06-06 08:51:26 4962 7

原创 区块链系列教程之:比特币的世界
原力计划

2008年一个化名为中本聪的神秘人第一次以论文的形式提出了:比特币:一种点对点电子现金系统(Bitcoin:A Peer-to-Peer Electroic Cash System),从此标志着比特币的诞生。 2008年到2020年,经过12年的发展,比特币已经成为市值最高的虚拟货币,也是当之无...

2020-06-05 06:41:54 7368 6

原创 并发和Read-copy update(RCU)
原力计划

在上一篇文章中的并发和ABA问题的介绍中,我们提到了要解决ABA中的memory reclamation问题,有一个办法就是使用RCU。 今天本文将会深入的探讨一下RCU是什么,RCU和COW(Copy-On-Write)之间的关系。 RCU(Read-copy update)是一种同步机制,...

2020-06-04 06:20:48 4694 7

原创 你不知道的java对象序列化的秘密
原力计划

你知道序列化可以使用代理吗?你知道序列化的安全性吗?每个java程序员都听说过序列化,要存储对象需要序列化,要在网络上传输对象要序列化,看起来很简单的序列化其实里面还隐藏着很多小秘密,今天本文将会为大家一一揭秘。

2020-06-03 06:16:00 5682 6

原创 JDK14性能管理工具:jmap和jhat使用介绍
原力计划

我们在写代码的过程中,经常会遇到内存泄露的问题,比如某个集合中的对象没有被回收,或者内存出现不明原因的增长。这些都是需要我们来定位的问题,我们可以使用jmap和jhat来对java程序中的内存对象进行分析。 jmap(Java Memory Map)是JDK自带的工具,用来将某个java程序的内...

2020-06-02 07:05:22 7429 7

原创 ABA问题的本质及其解决办法
原力计划

CAS的全称是compare and swap,它是java同步类的基础,java.util.concurrent中的同步类基本上都是使用CAS来实现其原子性的。 CAS的原理其实很简单,为了保证在多线程环境下我们的更新是符合预期的,或者说一个线程在更新某个对象的时候,没有其他的线程对该对象进行...

2020-06-01 07:00:17 7595 5

提示
确定要删除当前文章?
取消 删除