作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.码场心得 你是个能吃苦的人吗? 从前的能吃苦大多指的体力劳动的苦,但现在的能吃苦已经包括太多维度,包括:读书学习&寂寞的苦.深度思考&脑力的苦.自律习惯&修行的苦.自控能力&放弃的苦.低头做人&尊严的苦. 虽然这些苦摆在眼前,但大多数人还是喜欢吃简单的苦.熬夜加班.日复一日.重复昨天.CRUD,最后身体发胖.体质下降.能力不足.自抱自泣!所以有些苦能不吃就不…
前言  最近加入到新项目组负责前端技术预研和选型,其中涉及到一个熟悉又陌生的需求--国际化&本地化.熟悉的是之前的项目也玩过,陌生的是之前的实现仅仅停留在"有"的阶段而已.趁着这个机会好好学习整理一下,为后面的技术选型做准备.  本篇将于大家一起挽起袖子撸代码:) 如何获取Language tag?  在实现本地化处理前,我们起码先要获取Language tag吧?那么获取方式分为两类 1.直接获取浏览器的Language tag信息  一般来说浏览器语言的版本标示着用户所属或…
这是Mysql系列第14篇. 环境:mysql5.7.25,cmd命令中进行演示. 开发过程中,会经常用到数据库事务,所以本章非常重要. 本篇内容 什么是事务,它有什么用? 事务的几个特性 事务常见操作指令详解 事务的隔离级别详解 脏读.不可重复读.可重复读.幻读详解 演示各种隔离级别产生的现象 关于隔离级别的选择 什么是事务? 数据库中的事务是指对数据库执行一批操作,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功的情况. 举个例子 比如A用户给B用户转账100操作,过程如下: 1…
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 如果你相信你做什么都能成,你会自信的多! 千万不要总自我否定,尤其是职场的打工人.如果你经常感觉,这个做不好,那个学不会,别的也不懂,那么久而久之会越来越缺乏自信. 一般说能成事的人都具有赌徒精神,在他们眼里只要做这事那就一定能成,当然也有可能最后就没成,但在整个过程中人的心态是良好的,每天都有一个饱满的精神状态,孜孜不倦的奋斗着.最后也就是这样的斗志让走在一个起点的小伙伴,有了差…
作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 考不常用的.考你不会的.考你忽略的,才是考试! 大部分考试考的,基本都是不怎么用的.例外的咱们不说 就像你做程序开发,尤其在RPC+MQ+分库分表,其实很难出现让你用一个机器实例编写多线程压榨CPU性能.很多时候是扔出一个MQ,异步消费了.如果没有资源竞争,例如库表秒杀,那么其实…
目录 1 java内存模型,JMM(JAVA Memory Model) 2 CPU高速缓存.MESI协议 3 指令重排序和内存屏障指令 4 happen-before原则 5 synchronized内存语义 6 volatile的内存语义 7 final内存语义 8 synchronized,volatile内存语义的原理梳理 9 应用题:延迟加载双重锁定是否真的安全 10 题外话:伪共享(false sharing) 关注公众号,一起交流 参考文章 先介绍下多进程多线程在linux几种通信…
作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 学Java怎么能,突飞猛进的成长? 是不是你看见过的突飞猛进都是别人,但自己却很难! 其实并没有一天的突飞猛进,也没有一口吃出来的胖子.有得更多的时候日积月累.不断沉淀,最后才能爆发.破局! 举个简单的例子,如果你大学毕业时候已经写了40万行代码,还找不到工作吗?但40万行平均到…
volatile类型修饰符 本篇文章的目的是为了自己梳理面试知识点, 在这里做一下笔记. 绝大部分内容是基于这些文章的内容进行了copy+整理: 1. http://www.infoq.com/cn/articles/ftf-java-volatile 2. http://www.cnblogs.com/Mainz/p/3556430.html 后期还会加的内容: https://blog.csdn.net/sunmenggmail/article/details/16335897 http:/…
黑马程序员:Java培训.Android培训.iOS培训..Net培训 JAVA线程-内存模型和volatile详解 一.单核内存模型 1.程序运行时,将临时数据存放到Cache中 2.将CPU计算所需要的数据从Cache中拷贝一份到H Cache中 3.CPU直接从H Cache中读取数据进行计算 4.CPU将计算的结果写入H Cache中 5.H Cache将最新的结果值涮入Cache中(何时写入不确定) 6.将Cache中结果数据写回程序(如果有需要,例如文件.数据库) 需要H Cache…
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt202 Java内存模型:volatile是干什么用的Volatile字段是用于线程间通讯的特殊字段.每次读volatile字段都会看到其它线程写入该字段的最新值:实际上,程序员之所以要定义volatile字段是因为在某些情况下由于缓存和重排序所看到的陈旧的变量值是不可接受的.编译器和运行时禁止在寄存器里面分配它们.它们还必须保证,在它们写好之后,它们被从缓冲区刷新到主存中,…