Java中多线程的实现方式 在java的历史版本中,有两种创建多线程程序的方法 1) 通过创建Thread类的子类来实现(Thread类提供了主线程调用其它线程并行运行的机制) 主要步骤: 自定义类继承Thre…
分类:java并发
Java线程死锁查看分析方法
如何查看是否有Java线程死锁?下面介绍两种方法。 一.Jconsole Jconsole是JDK自带的图形化界面工具,使用JDK给我们的的工具JConsole,可以…
08 Java JUC 中的 ThreadPoolExecutor
通过 Executors 工具可以创建普通的线程池以及schedule调度任务的调度池。来看下内部是怎么实现的 public static ExecutorService newFixedThreadPool(int n…
Jdk1.6 JUC源码解析(17)-ThreadPoolExecutor
Jdk1.6 JUC源码解析(17)-ThreadPoolExecutor 作者:大飞 功能简介: ThreadPoolExecutor是JUC包中提供的线程池,使用ThreadPoolExecutor的好…
JUC学习笔记 -- (3)同步容器类和并发容器类
一、同步容器类 包括Vector(实现了一个动态数组,和ArrayList相似,但两者是不同的)和Hashtable。 同步容器类的问题: 例如:Vector的getLast方法,和deleteLast方法,都会执行“先…
关于java线程锁synchronized修饰普通方法与静态方法的区别
最近研究线程方面问题,关于这个synchronized锁修饰的问题,先是修饰普通方法,然后通过两个线程,各自执行自己对象的锁,发现方法执行互不影响,代码如下: private static int num=0; …
MySQL行级锁、表级锁、页级锁详细介绍
http://www.jb51.net/article/50047.htm 页级:引擎 BDB。 表级:引擎 MyISAM , 理解为锁住整个表,可以同时读,写不行 行级:引擎 INNODB , 单独的一行记录加锁 表级…
《java.util.concurrent 包源码阅读》13 线程池系列之ThreadPoolExecutor 第三部分
这一部分来说说线程池如何进行状态控制,即线程池的开启和关闭。 先来说说线程池的开启,这部分来看ThreadPoolExecutor构造方法: public ThreadPoolExecutor(int corePoolS…
如何改善Java中锁的性能
两个月前向Plumbr公司引进线程死锁的检测之后,我们开始收到一些类似于这样的询问:“棒极了!现在我知道造成程序出现性能问题的原因了,但是接下来该怎么做呢?” 我们努力为自己的产品所遇到的问题思考解决办法,但在这篇文章中…
java多线程系类:JUC线程池:01之线程池架构
概要 前面分别介绍了”Java多线程基础“、”JUC原子类“和”JUC锁“。本章介绍JUC的最后一部分的内容——线程池。内容包括:线程池架构图线程池…
JUC_1_volatile 原子变量与CAS算法
1.关于JUC: 在 Java 5.0 提供了 java.util.concurrent (简称 JUC )包,在此包中增加了在并发编程中很常用 的实用工具类,用于定义类似于线程的自定义子系统,包括线程池、异步 IO 和…
Thread类源码解读(1)——如何创建和启动线程
前言 谈到线程同步与通信,线程本身的概念是绕不开的,而进程和线程的概念已经是老生常谈的话题了,一些基本的概念本文就不再讨论了,本篇仅仅致力于通过源码,了解线程的构造与启动,从而更深入的了解线程。 本文源码基于jdk1.8…