Paranoid

要像一张邮票,坚持一件事情直到你到达目的地。

Java并发--synchronized实现原理及锁优化

注:本文中的部分内容摘抄自他人博客,如有侵权,请联系我,侵删~ 本篇博客主要讲述 synchronized 关键字的实现原理以及 JDK 1.6 后对 synchronized 的种种优化。synchronized 的使用不再赘述。 博主目前依旧存在的疑惑 请在阅读完此篇博客之后,帮助博...

2018-04-27 11:38:27

阅读数 2739

评论数 2

Java源码--JDK 1.8 HashMap 重点源码部分剖析

注:感谢 美团点评技术团队 的分享~~,博客部分内容摘抄自其中。侵删! 今天我们来探究一下 HashMap 的内部实现机制。 明确 JDK 1.8 中的 HashMap 使用数组 + 链表 + 红黑树的结构进行实现。 HashMap 的底层思想主要是哈希表,我们来看看 Java 的设...

2018-04-20 21:55:40

阅读数 688

评论数 0

JVM--从volatile深入理解Java内存模型

在上一篇博客JVM–解析Java内存区域及数据的内存分配与线程安全之间的一些联系中也说到了,想要理解volatile关键字,我们需要掌握Java虚拟机运行时数据区的相关知识,但是这还不够,只有理解了Java的内存模型,我们才能开始讲述volatile,而Java虚拟机运行时数据区是掌握Java内存...

2017-08-16 09:39:38

阅读数 1356

评论数 5

排序--堆排序分析与实现

何为堆一个数组序列我们可以将其用完全二叉树或近似完全二叉树(不是满二叉树的完全二叉树)表示出来,当数组下标为i时,它的父节点为(i-1)/2,左孩子为(2i+1),右孩子为(2i+2),这种对应关系说明数组下标为0的地方也要存储数据。(关系完全二叉树和满二叉树我在这里不做介绍)堆是在完全二叉树的基...

2017-07-27 20:25:04

阅读数 483

评论数 0

三方库--slf4j-log4j的使用

本文不去探究日志门面 slf4j 与其他众多日志框架 log4j、log4j2、logback、j.u.l(java.util.logging) 之间的关系,我们将重点关注 slf4j 与 log4j 的组合使用。 log4j 应该是最经典、使用人数最多的日志框架。博主刚好在最近开发的一个项目中使...

2019-04-28 22:06:41

阅读数 195

评论数 0

设计模式--深入理解策略模式与状态模式

引言 在翻阅《阿里巴巴 Java 开发手册》时,碰到如下规则: 【推荐】表达异常的分支时,少用 if-else 方式,如果使用 if()...else if()...else... 方式,也请勿超过三层,超过 3 层的 if-else 的逻辑判断代码可以使用卫语句、策略模式、状态模式等来实现。 ...

2019-01-25 17:15:19

阅读数 2062

评论数 0

Java源码--String.split(String regex)方法解析

注:博客内容主要摘抄自参考阅读中的两篇博文~ 前言 最近在翻阅《阿里巴巴Java开发手册》时发现了这样一条【推荐】性的原则: // 使用索引访问用 String 的 split 方法得到的数组时,需做最后一个分割符后有无内容的检查,否则会有抛 IndexOutOfBoundsException 的...

2019-01-20 20:40:14

阅读数 251

评论数 0

吐槽--有些实在令人心烦的事情就在这里吐槽一下

2018年12月26日: ConcurrentHashMap的源码已经分析了不知多长时间,我真的很想吐槽(憋不住了),这东西是真尼玛的不好理解,总觉的分析这个东西没多大用处,但是已经开始了的事情,怎么能轻言放弃!最后再吐槽一下,ConcurrentHashMap你是真滴牛逼(这样下去非得掉头发不可...

2018-12-26 13:56:56

阅读数 288

评论数 2

Geek--博客已迁

新博客地址:H.Y’s BLOG。 CSDN有可能弃用,最后欢迎大家访问我的小站~

2018-12-08 18:41:56

阅读数 222

评论数 3

Java并发--原子变量类的使用

注:本篇博客主要内容来源于网络,侵删~ 引言 我们假设你已经熟练掌握了CAS,原子变量类等的相关概念。这篇博客中,我们主要讨论原子变量类的使用。 原子变量类 原子变量类共12个,分4组: 计数器:AtomicInteger,AtomicLong,AtomicBoolean,AtomicRefe...

2018-10-03 13:51:16

阅读数 282

评论数 0

Java并发--深入理解显式锁

注:本篇博客部分内容引用自:Java并发编程:Lock 引言 在Java 5.0之前,协调对共享对象的访问可以使用到的机制只有synchronized和volatile。在Java 5.0之后,增加了一种新的机制:ReentrantLock。ReentrantLock并不是一种替代内置锁的方法,而...

2018-09-27 15:46:50

阅读数 426

评论数 0

Java并发--深入理解线程池

为什么需要线程池 在生产环境中,我们不能无限制的创建线程,主要原因如下: 线程创建与销毁的代价并不低; 如果可运行的线程数量多于可用处理器的数量,有些线程将会闲置,大量闲置的线程会消耗系统资源(内存)并给垃圾收集器带来压力; 大量线程竞争CPU也会造成不小的性能开销。 Execu...

2018-09-13 21:38:05

阅读数 357

评论数 0

计算机网络--详解P2P对等网络(二)—Chord算法研究与分析

结构化与非结构化网络 非结构化的P2P网络是指网络节点之间不存在组织关系,节点之间完全是对等的,比如第一代P2P网络Napster。 结构化的P2P网络与非结构化恰好相反,我们认为网络在逻辑上存在一个人为设计的结构,比如Chord假定网络是一个环,Kadelima则假定为一颗二叉树。有了这些逻...

2018-06-28 21:24:59

阅读数 1509

评论数 0

查找--深入理解一致性哈希算法

标签(空格分隔): 分布式 数据结构与算法 注:本篇博客只是讲述了一致性哈希的思想,我们会在之后讲述分布式哈希表以及一致性哈希的一种实现(Chord算法)。 什么是一致性哈希算法? 引用自维基百科: 一致性哈希是一种特殊的哈希算法。在使用一致哈希算法后,哈希表槽位数(大小)的改变...

2018-06-26 21:06:58

阅读数 1029

评论数 0

计算机网络--详解P2P对等网络(一)—BitTorrent协议

注:本篇文章内容借鉴自:浅入浅出BitTorrent协议,其中加入了博主的部分原创,感谢,侵删~ 对等网络的概念 以下定义主要摘抄自维基百科与中科院计算技术研究所: 对等式网络(peer-to-peer,简称P2P),又称点对点技术,是无中心服务器、依靠用户群(peers)交换信息的互...

2018-06-21 11:15:10

阅读数 4897

评论数 0

计算机网络--详解CDN

注:本文内容摘抄自CDN详解 — 不挑食的程序员,博主在其基础上进行了少量修改并加入了部分原创,感谢,侵删~ 之前我们已经学习过缓存机制以及Web代理,但对于大型网站的构建,这些还远远不够。要想真正的构建一个流行的网站,内容分发网络(Content Delivery Network)简称CDN,...

2018-06-18 20:35:04

阅读数 788

评论数 0

计算机网络--正向代理、反向代理、透明代理

版权声明:本文出自“丁胖胖的BLOG”,请务必保留此出处:http://z00w00.blog.51cto.com/515114/1031287。 引言 我们在之前的Web缓存机制一文中提到,缓存服务器就可以作为一种代理服务器。 代理分为正向代理、反向代理、透明代理等等。今天我们着重介绍这三...

2018-06-12 21:36:18

阅读数 352

评论数 0

计算机网络--浅谈电子邮件的工作原理

序言 对于大多数人来说,我想,接触的第一个电子邮箱应该都是QQ邮箱。我也不例外,从第一次接触QQ邮箱开始,就对这种有别于传统邮箱的软件产生了一些兴趣,却由于种种原因一直都没有去探究它。前段时间刚好在找实习,期间凸显了电子邮箱的重要性,刚好最近也有了一些空闲的时间,遂在了解了电子邮件的基本工作原理...

2018-06-08 14:34:36

阅读数 1067

评论数 0

计算机组成原理--64位CPU装载32位操作系统,它的寻址能力还是4GB吗?

借由这个问题,今天我们就把 32 位 CPU、64 位 CPU、32 位操作系统、64 位操作系统之间的区别与联系彻底搞清楚。对于这个问题,博主也是一知半解了好长时间啊~ 基本概念 32位的CPU与64位CPU 以下内容摘自维基百科: 64 位 CPU 是指 CPU 内部的通...

2018-05-25 23:20:56

阅读数 3593

评论数 2

Java Web--XiyouLinux Group图书借阅平台的实现

源码地址:XiyouLinux Group 图书借阅平台 项目地址中包含了一份README,因此对于项目的介绍省去部分内容。这篇博客,主要讲述项目中各个模块的实现细节。 项目概述及成果 首先将本项目使用到技术罗列出来: 使用Spring + Spring MVC进行后台...

2018-03-13 00:22:30

阅读数 580

评论数 1

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