线程安全
xiewenbo
互联网广告行业呆过几年,旅游公司呆过几年,对机器学习,自然语言处理,图像识别,个性化推荐 有兴趣
展开
-
关于SSH项目的multiThread safety
spring 的scope 如何使用spring的作用域:bean id="role" class="spring.chapter2.maryGame.Role" scope="singleton"/>这里的scope就是用来配置spring bean的作用域,它标识bean的作用域。在spring2.0之前bean只有2种作用域即:singleton(单例)、non-转载 2012-05-23 15:50:56 · 678 阅读 · 0 评论 -
深入研究java.lang.ThreadLocal类
深入研究java.lang.ThreadLocal类 一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一转载 2012-05-24 15:38:54 · 569 阅读 · 0 评论 -
配置Eclipse来调试并发代码
配置Eclipse来调试并发代码当今,几乎全部的程序员,不管使用什么程序语言,都会用IDE来创建应用。在相同的应用里,他们提供了很多有趣的功能来整合,例如:任务管理自动生成代码自动生成文档与版本控制系统集成debugger测试应用创建不同类型的应用和项目IDE最有用的特点其一就是debugger。你可以一步一步的执行你的应用并分析你的程序中全部对象和变量的值。如果你转载 2014-01-22 19:27:05 · 923 阅读 · 0 评论 -
深入理解Java内存模型 1
并发编程模型的分类在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。在消息传递的并发模型里,线程之间没有公共状态,线程之转载 2014-02-19 16:33:41 · 508 阅读 · 0 评论 -
深入理解Java内存模型(四)——volatile
volatile的特性当我们声明共享变量为volatile后,对这个变量的读/写将会很特别。理解volatile特性的一个好方法是:把对volatile变量的单个读/写,看成是使用同一个监视器锁对这些单个读/写操作做了同步。下面我们通过具体的示例来说明,请看下面的示例代码:class VolatileFeaturesExample { volatile long vl = 0L转载 2014-02-19 16:35:34 · 526 阅读 · 0 评论 -
Java高性能缓冲设计 vs Disruptor vs LinkedBlockingQueue
一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据。而每台服务器(8核12G)上CPU占用不到100%,load不超过5。这是怎么做到呢?下面将给你描述这个架构,它的核心是一个高效缓冲区设计,我们对它的要求是:1,该缓存区要尽量简单2,尽量避免生产者线程和消费者线程锁3,尽量避免大量GC缓冲 vs 性能瓶颈转载 2014-04-10 21:42:51 · 2048 阅读 · 0 评论