并发编程
rainforc
这个作者很懒,什么都没留下…
展开
-
java并发编程实践
一、基础概念总结1.多线程程序可能存在的风险:(1)安全性问题:多线程程序在没有充足同步的情况下,在特定的线程执行时序下,多个线程同时操作一块共享资源时,可能引发错误。(2)活跃性问题:当多个线程存在竞争共享资源时,可能会引发死锁,饥饿(线程长时间得不到执行)及活锁(定义:不断的重复相同的操作,而且永远不会成功)或死循环等问题。(3)性能问题:引入多线程后,如果设置...原创 2014-02-18 11:51:38 · 152 阅读 · 0 评论 -
Java多线程之同步器基础:AQS框架深入分析
一、什么是同步器 多线程并发的执行,之间通过某种共享状态来同步这个共同的语义可以称之为同步器。可以认为以上所有的锁机制都可以基于同步器定制来实现的。 而juc(java.util.concurrent)里的思想是将这些场景抽象出来的语义通过统一的同步框架来支持。juc 里所有的这些锁机制都是基于 AQS ( AbstractQueuedSynchronizer )...原创 2014-02-18 14:07:37 · 98 阅读 · 0 评论 -
Java多线程-工具篇-BlockingQueue
在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。认识BlockingQueue阻塞队列,顾名思义,首先它是一个队列,而一个队列在数据...原创 2014-02-18 14:31:02 · 75 阅读 · 0 评论 -
java中的进程与线程及java对象的内存结构
1、实现线程的三种方式: 使用内核线程实现 内核线程(Kernel Thread, KLT)就是直接由操作系统内核支持的线程,这种线程由内核来完成线程切换,内核通过操作调度器对线程进行调度,并负责将线程的任务映射到各个处理器上。程序一般不会直接去使用内核线程,而是去使用内核线程的一种高级接口——轻量级进程(Light Weight Process,LWP),轻量级进...原创 2014-04-01 15:33:36 · 344 阅读 · 0 评论