Java并发编程:性能、扩展性和响应

本文讨论的重点在于多线程应用程序的性能问题。我们会先给性能和扩展性下一个定义,然后再仔细学习一下Amdahl法则。下面的内容我们会考察一下如何用不同的技术方法来减少锁竞争,以及如何用代码来实现。

Java集合的小抄 Java初学者必备

在尽可能短的篇幅里,将所有集合与并发集合的特征,实现方式,性能捋一遍。适合所有”精通Java”其实还不那么自信的人阅读。不断更新中,请尽量访问博客原文......

如何提高 Java 中锁的性能

两个月前向Plumbr公司引进线程死锁的检测之后,我们开始收到一些类似于这样的询问:“棒极了!现在我知道造成程序出现性能问题的原因了,但是接下来该怎么做呢......

Java关于重写equals和hashCode的一点思考

在使用Set接口下的实现类存储数据时,需要确定存入的数据是否已经存在,对于八大基本数据类型的包装类以及String类,java默认已经重写了equals方法和hashCode方法......

Java中static变量作用和用法详解

static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量...

二叉树知识总结

二叉树一般出现在数据结构和算法之中,在实际工作中也会偶尔使用。这篇文章总结一下java中如何实现二叉树和二叉树相关操作的知识。

Java常量池理解与总结

一.相关概念 什么是常量 用final修饰的成员变量表示常量,值一旦给定就无法改变! final修饰的变量有三种:静态变量、实例变...

Java 类加载机制详解

一、类加载器 类加载器(ClassLoader),顾名思义,即加载类的东西。在我们使用一个类之前,JVM需要先将该类的字节码文件(.c...

Java中创建不可变的类

简介:本文主要介绍java中不可变类的相关知识,文章中大部分内容来自博客,博客地址见以下链接 Creating Immutable Classes i...

Java中4大基本加密算法解析

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。例如......

Java细粒度锁实现的3种方式

最近在工作上碰见了一些高并发的场景需要加锁来保证业务逻辑的正确性,并且要求加锁后性能不能受到太大的影响。初步的想法是通过数据的时间戳,id等关键字来加锁,从而保证不同类型数据处理的并发性。而java自身api提供的锁粒度太大,很难同时满足这些需求,于是自己动手写了几个简单的扩展…