会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
dream
hexo博客:https://www.hcyhj.cn/
博客园
首页
新随笔
联系
订阅
管理
2019年1月8日
并发不得不说的伪共享
摘要: 前言 可谓是一入 并发 深似海,看得越多,发现自己懂的越少,总感觉自己只是了解了其冰山一角。但是在研究的过程中越来越感受到一些框架的设计之美,很细腻的赶脚。同时也让我get到了新的知识点。 CPU缓存 在正式进入正题之前,必须得先说说缓存这个概念。对于缓存这个概念相信大多数程序猿都不会很陌生,在大大
阅读全文
posted @ 2019-01-08 23:58 NoSleep
阅读(283)
评论(0)
推荐(0)
2018年12月30日
线程的缓存何时刷新?
摘要: 前言 曾经有遇到过这样一个问题,有一个共享变量 ,线程A中执行 ,线程B中执行 ,在main函数中同时开启A,B线程,然后会发现程序会一直运行且不会退出。说白了这其实就是一个典型的可见性问题,A线程并不知道 已经被修改过了,故未将修改后的 变量的值从主内存中读取到线程缓存中来。 举例 上面的问题等价
阅读全文
posted @ 2018-12-30 22:07 NoSleep
阅读(547)
评论(0)
推荐(0)
2018年12月19日
GetBean源码全面解读
摘要: 前言 在上篇文章刨坑的过程中,顺便研究了一波spring源码,初始看的也是头晕,后面逐渐捋好了思路。个人感觉spring还是个大工程的,这篇文章解读的肯定也有自己理解不到位的部分,希望各位看官能多讨论讨论。最后会附上一副getBean方法的流程图,希望能打开大家看这部分源码的思路。(本文基于spri
阅读全文
posted @ 2018-12-19 19:09 NoSleep
阅读(317)
评论(0)
推荐(0)
2018年12月13日
记一次spring cloud踩坑
摘要: 前言 最近自己尝试着搭建springcloud项目,果不其然,刚开始就踩坑了,还是那种一脸懵逼的坑。搭建后程序能正常运行注册到eureka注册中心,但注册好之后便会立即注销掉。刚开始认为是线程抛异常挂掉了,便导致服务注销了。然后各种debug排查,最后发现是正常退出。至于具体原因,我下面做个详细解释
阅读全文
posted @ 2018-12-13 22:19 NoSleep
阅读(2761)
评论(0)
推荐(1)
2018年11月30日
一分钟教你学会搭建ngrok内网穿透
摘要: 前言 最近由于项目开发的需要,要和第三方对接一些接口。最开始是想直接部署在公网进行对接,后面发现重复部署以及不利于调试太浪费时间,对接过程中甚至会堵塞在某个地方许久。最后还是决定通过代理映射到内网,方便调试和对接。 搭建前提 1.需要一台公网服务器。这个可以租一台云服务器来解决。 2.需要一个域名。
阅读全文
posted @ 2018-11-30 14:50 NoSleep
阅读(3)
评论(0)
推荐(0)
2018年11月24日
ReentrantLock源码解读
摘要: 前言 写这篇文章之前,还是先安利一本书: "《java并发编程的艺术》" 。这本书对锁的实现的很多细节都解释的还是很清楚的,加上自己配合源码进行理解,读懂ReentrantLock这个类的实现应该不是那么困难。本文只对 独占模式 进行分析。 一行行分析ReentrantLock源码 直接步入正题,先
阅读全文
posted @ 2018-11-24 16:16 NoSleep
阅读(136)
评论(0)
推荐(0)
2018年11月21日
延迟加载的一些知识和误区
摘要: 原文地址 "https://www.hcyhj.cn/2018/11/21/delay load" 最近开始看 "《java并发编程的艺术》" 一书,从里面get到了好些知识上的盲点,下面就延迟加载这个问题来分析一波~~ 首先咱们来看一段简单的代码: 从上面的代码片段里,很容易发现在多线程并发情况下
阅读全文
posted @ 2018-11-21 12:49 NoSleep
阅读(277)
评论(0)
推荐(0)
2018年11月18日
浅析volatile原理及其使用
摘要: 前言 经常在网上看一些大牛们的博客,从中收获到一些东西的同时会产生一种崇拜感,从而萌发了自己写写博客的念头.然而已经有这个念头很久,却始终不敢下手开始写.今天算是迈出了人生的一大步^_^! volatile的定义及其实现 定义:如果一个字段被声明成volatile,那么java线程内存模型将确保所有
阅读全文
posted @ 2018-11-18 14:34 NoSleep
阅读(433)
评论(0)
推荐(0)
2018年9月7日
Go语言必知的90个知识点
摘要: 1. 函数可以返回函数类型 2. defer定义延迟调用,无论函数是否出错都确保结束前被调用 3. ok-idiom(A跌目)模式:多返回值中用一个名为ok的布尔值来标记操作是否成功 4. 结构中的匿名字段,结构的实例可以直接调用匿名字段的方法和属性 5. 计算机中变量是一段或者多段用来存储数据的内
阅读全文
posted @ 2018-09-07 19:54 NoSleep
阅读(1875)
评论(0)
推荐(0)
2017年11月14日
JAVA内存模型与线程
摘要: 1.java内存模型中定义了8中操作来完成变量从主内存拷贝到工作内存以及如何从工作内存同步回主内存的实现细节 lock(锁定):作用于主内存的变量,它把一个变量标识为一条线程独占的状态 unlock(解锁):作用于主内存的变量,它把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定 r
阅读全文
posted @ 2017-11-14 19:36 NoSleep
阅读(133)
评论(0)
推荐(0)
公告