首页
学习
活动
专区
工具
TVP
发布

java一日一条

专栏作者
1064
文章
994765
阅读量
83
订阅数
并发编程:原子性、可见性和竞态条件与复合操作
一个不可分割的操作,比如a=0;再比如:a++; 这个操作实际是a = a + 1;是可分割的,它其实包含三个独立的操作:读取a的值,将值加1,然后将计算结果写入a,这是一个“读取-修改-写入”的操作序列,所以他不是一个原子操作。
哲洛不闹
2019-05-23
9160
脑裂产生以及解决办法
在高可用(HA)系统中,当联系2个节点的“心跳线”断开时,本来为一整体、动作协调的HA系统,就分裂成为2个独立的个体。由于相互失去了联系,都以为是对方出了故障。两个节点上的HA软件像“裂脑人”一样,争抢“共享资源”、争起“应用服务”,就会发生严重后果——或者共享资源被瓜分、2边“服务”都起不来了;或者2边“服务”都起来了,但同时读写“共享存储”,导致数据损坏(常见如数据库轮询着的联机日志出错)。
哲洛不闹
2018-12-28
1.7K0
线程五种状态(新建、就绪、运行、阻塞、死亡)
线程从创建、运行到结束总是处于下面五个状态之一:新建状态、就绪状态、运行状态、阻塞状态及死亡状态。
哲洛不闹
2018-12-25
2K0
JAVA中volatile、synchronized和lock解析
在研究并发程序时,我们需要了解java中关键字volatile和synchronized关键字的使用以及lock类的用法。
哲洛不闹
2018-12-06
6550
InnoDB引擎算法和优化
索引是应用程序设计和开发的一个重要方面。如果索引太多,应用的性能可能会受到影响;如果索引太少,对查询性能又会产生影响。
哲洛不闹
2018-12-06
7820
Git常用命令使用大全
目前开发的新项目使用的版本控制工具基本用的都是Git,老项目用的还是Svn,网上Git资源也很多,多而杂。我整理了一份关于Git的学习资料,希望能帮助到正在学习Git的同学。
哲洛不闹
2018-12-05
6120
1024程序员节是怎么来的?为什么设置程序员节?
1024是2的十次方,二进制计数的基本计量单位之一,因此每年的10月24日被大家亲切称为程序员节,也是一个属于中国程序员的共同节日。那么1024程序员节的来历是什么?出处和来历是怎样的?为什么有程序员
哲洛不闹
2018-11-23
6200
Java并发编程之原子操作类
当更新一个变量的时候,多出现数据争用的时候可能出现所意想不到的情况。这时的一般策略是使用synchronized解决,因为synchronized能够保证多个线程不会同时更新该变量。然而,从jdk 5之后,提供了粒度更细、量级更轻,并且在多核处理器具有高性能的原子操作类。因为原子操作类把竞争的范围缩小到单个变量上,这可以算是粒度最细的情况了。
哲洛不闹
2018-11-20
5350
关于ThreadLocal内存泄露的备忘
还记得第一次接触到ThreadLocal可能导致内存泄露的问题是有一次面试的时候被问到了ThreadLocal的缺陷是什么。当然由于后来没有面试官的联系方式很遗憾也一直没能确认所谓的缺陷是不是就是可能导致内存泄漏,不过后来发现虽然当时弄明白了可是过段时间又搞忘记了这个问题,所以特别记录下来做个备忘吧。
哲洛不闹
2018-10-25
5760
Spring-涉及到的设计模式汇总
又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。
哲洛不闹
2018-10-18
6040
『文末送书』Spring Cloud 微服务的那点事
在详细的了解SpringCloud中所使用的各个组件之前,我们先了解下微服务框架的前世今生。
哲洛不闹
2018-10-18
3680
(转)Java中的System类
System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
哲洛不闹
2018-09-19
3960
(转)Java正则表达式入门
众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 自从jdk1.4推出ja
哲洛不闹
2018-09-19
9310
Calendar 详解
究竟什么是一个 Calendar 呢?中文的翻译就是日历,那我们立刻可以想到我们生活中有阳(公)历、阴(农)历之分。它们的区别在哪呢?
哲洛不闹
2018-09-19
8540
java的三大版本,你知道吗
J2SE是java的基础,主要是运用到桌面应用程序的开发中。小编一直以为java中是没有那种能够编译成.exe运行文件的组件,知道今天我才发现,java在这方面也是能够开发的,但是现在比较少用到它,因为使用c++或者c#很容易就能开发界面;
哲洛不闹
2018-09-19
4390
java内存分配和String类型的深度解析
在java语言的所有数据类型中,String类型是比较特殊的一种类型,同时也是面试的时候经常被问到的一个知识点,本文结合java内存分配深度分析关于String的许多令人迷惑的问题。下面是本文将要涉及到的一些问题,如果读者对这些问题都了如指掌,则可忽略此文。
哲洛不闹
2018-09-19
1.1K0
为什么Java字符串是不可变对象?
本文主要来介绍一下Java中的不可变对象,以及Java中String类的不可变性,那么为什么Java的String类是不可变对象?让我们一起来分析一下。
哲洛不闹
2018-09-19
5090
基础类型转化成String
在程序中你可能时常会需要将别的类型转化成String,有时候可能是一些基础类型的值。在拼接字符串的时候,如果你有两个或者多个基础类型的值需要放到前面,你需要显式的将第一个值转化成String(不然的话像System.out.println(1+’a')会输出98,而不是”1a”)。当然了,有一组String.valueOf方法可以完成这个(或者是基础类型对应的包装类的方法),不过如果有更好的方法能少敲点代码的话,谁还会愿意这么写呢?
哲洛不闹
2018-09-19
6530
Java类的生命周期详解
最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题 讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,所以造成大家在基础和原理方面的知识比较匮 乏,所以笔者今天就斗胆来讲一下这个问题,权当抛砖引玉,希望对在这个问题上有疑惑的朋友有所帮助,文中有说的不对的地方,也希望各路高手前来指正。
哲洛不闹
2018-09-19
6470
java.util.Arrays类详解
为实现数组的排序和查找、数组的比较和对数组填充元素,java.util.Arrays类包括各种各样的静态方法。这些方法都有对所有基本类型的重载方法。
哲洛不闹
2018-09-19
5940
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档