随笔 - 281  文章 - 1 评论 - 36 阅读 - 61万

随笔分类 -  并发编程

多线程技术
java Thread 类的源码阅读(oracle jdk1.8)
摘要:java线程类的源码分析阅读技巧; 首先阅读thread类重点关注一下几个问题; 1、start() ,启动一个线程是如何实现的? 2、java线程状态机的变化过程以及如何实现的? 3、 1、start方法的源码如下: new Thread(Runnable);代码内部实际代码如下: /** * I 阅读全文
posted @ 2019-03-27 22:31 张释文 阅读(658) 评论(0) 推荐(0) 编辑
java volatile关键字
摘要:概述 Java语言中关键字 volatile 被称作轻量级的 synchronized,与synchronized相比,volatile编码相对简单且运行的时的开销较少,但能够正确合理的应用好 volatile 并不是那么的容易,因为它比使用锁更容易出错,接下来本文主要介绍 volatile 的使用 阅读全文
posted @ 2017-06-05 16:24 张释文 阅读(377) 评论(0) 推荐(0) 编辑
java应用死循环排查方法或查找程序消耗资源的线程方法(面试)
摘要:今天遇到一个面试,怎么在一堆线程中查找一个死循环? 如果遇到线上应用cpu飙升,并出现OutOfMemery怎么办? 首先线上应用的jvm配置要养成良好的习惯,增加一下配置则可以在jvm发生 oom的时候自动dump日志了 -XX:+HeapDumpOnOutOfMemoryError -XX:He 阅读全文
posted @ 2016-08-15 22:17 张释文 阅读(2012) 评论(0) 推荐(0) 编辑
java并发编程_CountDownLanch(倒计数锁存器)应用场景
摘要:使用介绍: 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 用给定的计数 初始化 CountDownLatch。由于调用了 countDown() 方法,所以在当前计数到达零之前,await 方法会一直受阻塞。之后,会释放所有等待的线程,await 的所有后续 阅读全文
posted @ 2016-07-26 20:45 张释文 阅读(2862) 评论(0) 推荐(0) 编辑
java中Thread的 interrupt异常处理
摘要:http://blog.csdn.net/srzhz/article/details/6804756 阅读全文
posted @ 2016-07-23 21:56 张释文 阅读(280) 评论(0) 推荐(0) 编辑
java并发库_并发库知识点整理
摘要:并发库(java.util.concurrent)中的工具数不胜数,那么我们梳理一下线程并发库中重要的一些常用工具: 1. 阅读全文
posted @ 2016-07-21 15:42 张释文 阅读(191) 评论(0) 推荐(0) 编辑
Lock锁的使用示例
摘要:Lock锁是java5用来代替synchronized的一种面向对象的锁的方案 1 public class LockDemo { 2 /** 3 * Lock是用来替换synchronized, 优点是Lock 更加面向对象。eclipse查看接口所有的实现类用CTRL+T 4 ... 阅读全文
posted @ 2015-12-13 18:35 张释文 阅读(571) 评论(0) 推荐(0) 编辑
多线程范围内的数据共享
摘要:多线程范围内的共享解决方法参考有4中: 1.如果线程执行的代码相同,多个线程共享同一个runnable对象时,将共享数据放在runnable对象 2.如果多个线程执行的代码不同,将共享数据封装到一个对象中,将这个对象逐一传递给各个runnable对象 3.如果多个线程执行的代码不同,将共享数据作为外 阅读全文
posted @ 2015-12-13 12:43 张释文 阅读(2149) 评论(1) 推荐(0) 编辑
优雅的设计单线程范围内的数据共享(ThreadLocal)
摘要:单线程范围内数据共享使用ThreadLocal Person类(优雅的线程范围共享数据设计): ThreaLocal的remove方法,可以移除当前线程绑定在ThreadLocal上的所有变量数据。 阅读全文
posted @ 2015-12-13 09:26 张释文 阅读(619) 评论(0) 推荐(0) 编辑
线程池介绍与应用
摘要:package com.ctyun.thread.concurrent; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.S 阅读全文
posted @ 2015-12-13 09:20 张释文 阅读(287) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示