自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

raylee2007的专栏

java技术博客,每天深入一点点

  • 博客(7)
  • 资源 (20)
  • 问答 (4)
  • 收藏
  • 关注

原创 从头认识多线程-4.4 ThreadLocal的实现原理

从头认识多线程-4.4 ThreadLocal的实现原理这一章节我们来讨论一下ThreadLocal的实现原理。1.ThreadLocal的存储一般可以认为是ThreadLocalMap这个内部类来存储,但是如果更加深入一层,其实他的存储是Entry类的可变数组,这个跟HashMap的存储比较相似2.为什么在使用ThreadLocal的时候需要初始化?ThreadLocal的初始化源码: /**

2016-06-20 14:19:15 1553 1

原创 从头认识多线程-4.3 ThreadLocal使用时需要注意的地方

4.3 这一章节我们来讨论一下关于ThreadLocal的使用的时候需要注意的地方ThreadLocal主要的使用是get、set、initialValue这几个方法,具体的使用我们这里不做介绍,下面只是举一些它使用的时候需要注意的地方。1.在get方法的时候出现nullpackage com.ray.deepintothread.ch04.topic_3;public class ThreadLo

2016-06-17 15:47:21 6340

原创 从头认识多线程-4.2 对象逸出的其他解决方案-主要是ThreadLocal的应用

这一章节我们来讨论一下对象逸出的其他解决方案。1.由于出现对象逸出都是在多线程环境下,那么,我们换成单线程即可,当然,这个方法基本没有人使用, 因为现在都是多核处理器,为了提升性能,不可能使用单核,但是下面我也给出例子吧。package com.ray.deepintothread.ch04.topic_2; public class Ad_hoc { private int id = 0;

2016-06-12 23:00:07 3477

原创 从头认识多线程-4.1 对象的发布(Publish)、逸出(Escape)以及逸出的解决方案

这一章节我们来讨论一下对象的发布与逸出。其实在前两个章节我们都有想应的讨论,只不过有一些不用补充的问题,我将会放到这个章节里面去。1.发布(Publish)当一个对象能够给其他代码引用。package com.ray.deepintothread.ch04.topic_1; import java.util.HashMap; public class Publish { private Ha

2016-06-11 21:45:25 4592 2

原创 从头认识多线程-3.3 synchronized某些解决不了的可视性问题,只能使用volatile来解决

这一章节我们讨论一下synchronized不但具备操作的同步性,还具备volatile的可视性。1.引入之前的异步死循环代码:package com.ray.deepintothread.ch03.topic_3; public class DeadForAsychn { public static void main(String[] args) throws InterruptedEx

2016-06-08 11:52:29 3333

原创 从头认识多线程-3.2 使用volatile声明的变量的写操作是非原子性的

这一章节我们来讨论一下使用volatile声明的变量的各种操作是非原子性的。1.上一章节我们已经提到,volatile把工作内存里面变量的改变同步到主内存, 使得各个线程能够把该变量当成是整体的状态控制2.但是,使用volatile声明的变量的写操作是非原子性的代码清单:package com.ray.deepintothread.ch03.topic_2; public class Volat

2016-06-06 22:19:39 3975

原创 从头认识多线程-3.1 使用volatile解决异步死循环

这一章节我们来讨论一下使用volatile解决异步死循环。1.在讨论上面的问题前,我们引入另一个例子:同步死循环代码清单:package com.ray.deepintothread.ch03.topic_1; public class DeadFor { private boolean isStop = false; public boolean isStop() { return

2016-06-06 10:44:52 4193

Mastering Python Design Patterns 精通python设计模式

Mastering Python Design Patterns 精通python设计模式

2015-09-09

零基础学python-1.7 第二个程序

零基础学python 1.7 第二个程序

2015-08-10

C语言从入门到精通

C语言从入门到精通 from ray 2015

2015-05-29

Android应用开发实战

Android应用开发实战 from ray

2015-05-29

重构_改善既有代码的设计

重构_改善既有代码的设计 from ray

2015-05-29

PhoneGap实战

PhoneGap 实战 from ray

2015-05-25

Maven实战中文版

Maven 实战 中文版 from ray

2015-05-25

cocos2d-x手机游戏开发

cocos2d-x 手机游戏开发 123

2015-05-25

Android.4游戏高级编程(第2版)

Android.4游戏高级编程(第2版)

2015-05-25

spring in action 第一课

配合我课程的源代码,我的博客现在主要用来研究spring,第一课:spring,他的目的就是简化java 的编写工作

2014-10-23

Flash实例教程

Flash实例教程 flash

2007-04-14

网页美工教材

关于网页美工的教材!

2007-04-14

java2 参考大全

java参考大全,java基础(继承等),java类,java软件开发技术,应用java

2007-04-14

FlashAndXMLADevelopersGuide

关于flash与xml的连接应用!原文英语的!

2007-04-14

Flash Mx 2004ASBible(2004)

Flash Mx 2004ASBible(2004)

2007-04-05

java新手上路flash教程

java新手上路flash教程 一些关于java怎样设定环境变量等的swf视频

2007-04-05

FlashMX2004动作脚本字典

FlashMX2004动作脚本字典,有详细的解释!

2007-04-05

ActionScriptforFlashMX

as 权威指南第二版

2007-04-05

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

TA关注的人

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