1.Executor 接口源码: public interface Executor { /** * Executes the given command at some time in the future. The …
分类:java并发
Java并发实现线程阻塞原语LockSupport,自己动手写把”锁”---LockSupport深入浅出
LockSupport 和 CAS 是Java并发包中很多并发工具控制机制的基础,它们底层其实都是依赖Unsafe实现。LockSupport是用来创建锁和其他同步类的基本线程阻塞原语。 1、LockSupport原理 …
java面试技巧
简历 1.HR看简历,都是看技术关键词。可以多看招聘要求,简历上要多写些关键词。比如io,集合,多线程,并发,spring,mysql,分布式等等。 2.可以准备多份简历,根据不同的jd发送不同的简历。 3.网上简历做成…
写一个java死锁的demo
package com.simon.study; /** * 线程死锁 一个线程要同时拥有两个对象的资源才能进行下一步操作; * @author: Simon * @date: 2017年7月29日 下午9:48:43 …
Java多线程系列--“JUC集合”10之 ConcurrentLinkedQueue
概要 本章对Java.util.concurrent包中的ConcurrentHashMap类进行详细的介绍。内容包括:ConcurrentLinkedQueue介绍ConcurrentLinkedQueue原理和数据结…
Java JUC包源码分析 - 栅栏CyclicBarrier
栅栏不同于倒计时器的一点是倒计时器是一个或N个线程等待其他线程调用countdown()到指定次数后再继续执行,而栅栏是N个线程之间互相等待,当调用await()到达指定次数后就会唤醒所有等待线程,同时还可以在到达指定数…
Java主线程等待子线程、线程池
public class TestThread extends Thread { public void run() { System.out.println(this.getName() + "子线程开始"); try…
Java ExecutorService四种线程池及ThreadPoolExecutor机制
一、Java 线程池 Java通过Executors提供四种线程池,分别为:1、newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新…
Java BIO、NIO、AIO 原理
先来个例子理解一下概念,以银行取款为例: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给…
Java并发编程札记-(五)JUC容器-01概述
今天开始学习JUC容器。JUC提供了用于多线程上下文中的Collection实现与高效的、可伸缩的、线程安全的非阻塞FIFO队列。参考JDK1.8,画出下图。 List JUC容器中List的实现只有CopyOnWrit…
Java内置锁synchronized的可重入性
学习自 https://blog.csdn.net/aigoogle/article/details/29893667 对我很有帮助 感谢作者
在Java程序中处理数据库超时与死锁
简介 每个使用关系型数据库的程序都可能遇到数据死锁或不可用的情况,而这些情况需要在代码中编程来解决;本文主要介绍与数据库事务死锁等情况相关的重试逻辑概念,此外,还会探讨如何避免死锁等问题,文章以DB2(版本9)与Ja…