自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

转载 深入理解Java内存模型(七)——总结

作者 程晓明 发布于 三月 15, 2013 | 新浪微博腾讯微博 豆瓣网 TwitterFacebook linkedin 邮件分享 更多 稍后阅读我的阅读清单处理器内存模型顺序一致性内存模型是一个理论参考模型,JMM和处理器内存模型在设计时通常会把顺序一致性内存模型作为参照。JMM和处理器内存模型在设计时会对顺序一致性模型做一些放松,因为如果

2013-05-06 16:31:02 548

转载 深入理解Java内存模型(六)——final

作者 程晓明 发布于 三月 08, 2013 | 10 评论 新浪微博腾讯微博豆瓣网TwitterFacebooklinkedin邮件分享更多 0稍后阅读我的阅读清单与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则:在构造函数内对一个f

2013-05-06 16:30:07 490

转载 深入理解Java内存模型(五)——锁

作者 程晓明 发布于 三月 05, 2013 | 新浪微博腾讯微博 豆瓣网 TwitterFacebook linkedin 邮件分享 更多 稍后阅读我的阅读清单锁的释放-获取建立的happens before 关系锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。下面是锁释放

2013-05-06 16:28:47 576

转载 深入理解Java内存模型(四)——volatile

作者 程晓明 发布于 二月 05, 2013 | 24 评论 新浪微博腾讯微博豆瓣网TwitterFacebooklinkedin邮件分享更多 0稍后阅读我的阅读清单volatile的特性当我们声明共享变量为volatile后,对这个变量的读/写将会很特别。理解volatile特性的一个好方法是:把对volatile变量的单个

2013-05-06 16:27:23 505

转载 深入理解Java内存模型(三)——顺序一致性

作者 程晓明 发布于 一月 28, 2013 | 17 评论 新浪微博腾讯微博豆瓣网TwitterFacebooklinkedin邮件分享更多 0稍后阅读我的阅读清单数据竞争与顺序一致性保证当程序未正确同步时,就会存在数据竞争。java内存模型规范对数据竞争的定义如下:在一个线程中写一个变量,在另一个线程读同一个变量,

2013-05-06 16:25:11 1315

转载 深入理解Java内存模型(二)——重排序

作者 程晓明 发布于 一月 26, 2013 | 29 评论 新浪微博腾讯微博豆瓣网TwitterFacebooklinkedin邮件分享更多 0稍后阅读我的阅读清单数据依赖性如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性。数据依赖分下列三种类型:名称代码示例

2013-05-06 16:22:36 532

转载 深入理解Java内存模型(一)——基础

作者 程晓明 发布于 一月 22, 2013 | 23 评论 新浪微博腾讯微博豆瓣网TwitterFacebooklinkedin邮件分享更多 82稍后阅读我的阅读清单并发编程模型的分类在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交

2013-05-06 16:18:17 661

转载 浅谈java内存模型

浅谈java内存模型 不同的平台,内存模型是不一样的,但是jvm的内存模型规范是统一的。其实java的多线程并发问题最终都会反映在java的内存模型上,所谓线程安全无非是要控制多个线程对某个资源的有序访问或修改。总结java的内存模型,要解决两个主要的问题:可见性和有序性。我们都知道计算机有高速缓存的存在,处理器并不是每次处理数据都是取内存的。JVM定义了自己的内存模型,屏蔽了底层平台

2013-05-06 11:37:19 544

转载 linux shell command

1、ps:查看进程 2、kill:结束进程 3、sleep:使正在执行的进程在规定时间内进入休眠状态 4、man:获取命令的帮助信息man command5、pwd:查找自己所在的位置 6、find:在子目录中搜索匹配的文件语法:[root @test /root ]# find [路径] [参数]参数说明:1. 时间:-atime

2013-04-28 16:25:07 5045

转载 深度解析Java内存的原型及工作原理

深度解析Java内存的原型及工作原理2012-06-29 13:54 悠虎 比特网 我要评论(2) 字号:T | T本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理。AD: 2013大数据全球技术峰会低价抢票中 本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理

2013-04-02 20:49:09 432

转载 JVM内存模型及垃圾收集策略解析(一)

JVM内存模型是Java的核心技术之一,之前51CTO曾为大家介绍过JVM分代垃圾回收策略的基础概念,现在很多编程语言都引入了类似Java JVM的内存模型和垃圾收集器的机制,下面我们将主要针对Java中的JVM内存模型及垃圾收集的具体策略进行综合的分析。一 JVM内存模型1.1 Java栈Java栈是与每一个线程关联的,JVM在创建每一个线程的时候,会分配一定的栈空间给线程。它主要用

2013-04-02 20:44:18 450

转载 Java类加载原理解析

Java类加载原理解析                                        1       基本信息摘要:每个java开发人员对java.lang.ClassNotFoundExcetpion这个异常肯定都不陌生,这背后就涉及到了java技术体系中的类加载。Java的类加载机制是java技术体系中比较核心的部分,虽然和大部分开发人员直接打交道不多,但是对其

2013-04-02 20:42:44 586

转载 volatile使用

在当前的Java内存模型下,线程可以把变量保存在本地内存(比如机器的寄存器)中,而不是直接在主存中进行读写。这就可能造成一个线程在主存中修改了一个变量的值,而另外一个线程还继续使用它在寄存器中的变量值的拷贝,造成数据的不一致。要解决这个问题,只需要像在本程序中的这样,把该变量声明为volatile(不稳定的)即可,这就指示JVM,这个变量是不稳定的,每次使用它都到主存中进行读取。一般说来,多任

2013-03-30 16:26:10 508

转载 利用MDC在日志上增加用户或跟踪码

log4j.rootLogger=error,Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.ConversionPatt

2013-03-30 16:07:33 3379

转载 CountDownLatch Race

import java.util.*;import java.util.concurrent.*;class Race{    private Random rand = new Random();        private int distance = rand.nextInt(250);    private CountDownLatch start;

2013-03-30 15:24:09 530

转载 Spring 事务管理高级应用难点剖析3

Spring 事务管理高级应用难点剖析: 第 3 部分陈 雄华, 系统架构师陈雄华,2002 年毕业于厦门大学计算机与信息工程学院,获硕士学位。拥有 10 多年的 Java 开发、设计、架构的经验。技术研发之余,常将经验所得行诸于文字,作者是国内多个著名技术网站的专栏作者,在各大技术网站、报刊杂志发表过数十篇技术文章,广受读者好评。于 2005 年出版《精通 JBuilder

2013-03-30 11:17:30 661

转载 Spring 事务管理高级应用难点剖析2

Spring 事务管理高级应用难点剖析: 第 2 部分陈 雄华, 系统架构师陈雄华,2002 年毕业于厦门大学计算机与信息工程学院,获硕士学位。拥有 10 多年的 Java 开发、设计、架构的经验。技术研发之余,常将经验所得行诸于文字,作者是国内多个著名技术网站的专栏作者,在各大技术网站、报刊杂志发表过数十篇技术文章,广受读者好评。于 2005 年出版《精通 JBuilder

2013-03-30 11:16:36 938

转载 Spring 事务管理高级应用难点剖析1

Spring 事务管理高级应用难点剖析: 第 1 部分陈 雄华, 系统架构师陈雄华,2002 年毕业于厦门大学计算机与信息工程学院,获硕士学位。拥有 10 多年的 Java 开发、设计、架构的经验。技术研发之余,常将经验所得行诸于文字,作者是国内多个著名技术网站的专栏作者,在各大技术网站、报刊杂志发表过数十篇技术文章,广受读者好评。于 2005 年出版《精通 JBuilder

2013-03-30 11:15:11 492

转载 iframe自动调整 兼容版

引用 http://tmsoft.lsxy.com/index.php?load=read&id=36 当你在页面上使用了iframe之后,一般来说会不希望iframe显示难看的滚动条,以使iframe里面的内容和主页面的内容浑然一体。这时候你会设置 scrolling="no"  属性。但是这样一来如果iframe里面的内容是变化的,高度会随之内容的变化而变化的时候,你的iframe就会

2009-04-02 11:20:00 855

原创 用数组实现堆栈和队列

package com.sms;/** *  * @author Administrator * */public class Stack {   public static  int MAX_SIZE=10;   private Object[] stack = new Object[MAX_SIZE];   int currentPos=-1;

2008-11-04 21:28:00 582

转载 java面试题

Java基础方面: 1、作用域public,private,protected,以及不写时的区别答:区别如下:作用域           当前类       同一package  子孙类       其他packagepublic            √              √                  √             √protected        √

2007-05-16 14:56:00 963

转载 QuickSort

快速排序 Quick Sort我们已经知道,在决策树计算模型下,任何一个基于比较来确定两个元素相对位置的排序算法需要Ω(nlogn)计算时间。如果我们能设计一个需要O(n1ogn)时间的排序算法,则在渐近的意义上,这个排序算法就是最优的。许多排序算法都是追求这个目标。下面介绍快速排序算法,它在平均情况下需要O(nlogn)时间。这个算法是由C.A.R.Hoare发明的。算法的基本思想

2007-05-16 14:43:00 688

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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