
多线程
文章平均质量分 54
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
多线程基础
多线程的技能多线程的创建继承Thread类public class MyThread extends Thread { @Override public void run() { System.out.println("MyThread"); } @Test public void TestrRun(){ MyThrea...原创 2018-04-25 00:39:38 · 225 阅读 · 0 评论 -
lock.lockInterruptibly()
package DSJ._01mythread.thread.lock;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 观察现象:如果thread-0得到了锁,阻塞。。。thread-1尝试获取锁,如果拿不到,则可以被中断等待 * @author...原创 2018-12-24 16:45:36 · 313 阅读 · 0 评论 -
Lock
package DSJ._01mythread.thread.lock;import java.util.ArrayList;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 观察现象:一个线程获得锁后,另一个线程取不到锁,不会一直等待 *...原创 2018-12-24 16:24:07 · 159 阅读 · 0 评论 -
BlockingQueue深入解析-BlockingQueue看这一篇就够了
BlockingQueue深入解析-BlockingQueue看这一篇就够了转载:https://www.cnblogs.com/WangHaiMing/p/8798709.html本篇将详细介绍BlockingQueue,以下是涉及的主要内容:BlockingQueue的核心方法 阻塞队列的成员的概要介绍 详细介绍DelayQueue、ArrayBlockingQueue、Lin...原创 2018-12-26 15:46:32 · 862 阅读 · 0 评论 -
多线程编程---线程池
在项目中,线程是一种稀缺资源,频繁的创建和销毁,对于系统的性能有着很大的消耗。线程池是线程资源复用的典范之作,通过维护一个一定数量的线程集合,在需要运行线程任务的时候直接从这个集合中取出一个线程去运行任务,而不是重新创建一个。在Java中提供了几种线程池创建的方法,不过这几种方法都是最后通过 ThreadPoolExecutor来创建线程的。在开始讲Java提供的几种之前,先讲下ThreadPo...转载 2018-08-15 22:59:35 · 149 阅读 · 0 评论 -
读写锁操作代码方法
package lock;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.locks.ReadWriteLock;import java.util.concurrent.locks.ReentrantReadWrit...原创 2018-07-29 18:10:09 · 220 阅读 · 0 评论 -
Java多线程基础——对象及变量并发访问
Java多线程基础——对象及变量并发访问在开发多线程程序时,如果每个多线程处理的事情都不一样,每个线程都互不相关,这样开发的过程就非常轻松。但是很多时候,多线程程序是需要同时访问同一个对象,或者变量的。这样,一个对象同时被多个线程访问,会出现处理的结果和预期不一致的可能。因此,需要了解如何对对象及变量并发访问,写出线程安全的程序,所谓线程安全就是处理的对象及变量的时候是同步处理的,在处理的时候...转载 2018-07-29 15:46:42 · 173 阅读 · 0 评论 -
Java中的锁分类
在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。公平锁/非公平锁公平锁是指...转载 2018-07-29 15:40:06 · 115 阅读 · 0 评论 -
Java多线程基础——Lock类
之前已经说道,JVM提供了synchronized关键字来实现对变量的同步访问以及用wait和notify来实现线程间通信。在jdk1.5以后,JAVA提供了Lock类来实现和synchronized一样的功能,并且还提供了Condition来显示线程间通信。Lock类是Java类来提供的功能,丰富的api使得Lock类的同步功能比synchronized的同步更强大。本文章的所有代码均在Loc...转载 2018-07-29 11:35:39 · 121 阅读 · 0 评论 -
Java多线程学习之wait、notify/notifyAll 详解
Java多线程学习之wait、notify/notifyAll 详解1、wait()、notify/notifyAll() 方法是Object的本地final方法,无法被重写。2、wait()使当前线程阻塞,前提是 必须先获得锁,一般配合synchronized 关键字使用,即,一般在synchronized 同步代码块里使用 wait()、notify/notifyAll() 方法。...转载 2018-07-29 11:33:17 · 130 阅读 · 0 评论 -
mybatis 乐观锁实现,解决并发问题。
https://blog.youkuaiyun.com/zhouzhiwengang/article/details/54973509转载情景展示:银行两操作员同时操作同一账户就是典型的例子。比如A,B操作员同时读取一余额为1000元的账户,A操作员为该账户增加100元,B操作员同时为该账户扣除50元,A先提交,B后提交。最后实际账户余额为1000年至1050年= 950元,但本该为1000 + 100-50...转载 2018-06-11 18:27:51 · 3344 阅读 · 1 评论 -
模拟并发用户发送请求
public class ConcurrentInvoiceTest { final static SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static void main(String[] args) { CountDownLatch latch=new CountDown...原创 2018-06-11 13:11:59 · 1402 阅读 · 0 评论 -
变量的并发访问
synchronized的同步方法方法内的变量为线程安全的"非线程安全" 问题存在于“实例变量”中,如果是方法内部的私有变量,则不存在“非线程安全”问题,也就是线程安全。public class HasSelfPrivateNum { public void addI(String name) { try { int num = 0; ...原创 2018-05-06 19:49:34 · 294 阅读 · 0 评论 -
Lock ,synchronized,线程池
synchronized 的缺陷synchronized 是 java 中的一个关键字, 也就是说是 Java 语言内置的特性。如果一个代码块被 synchronized 修饰了, 当一个线程获取了对应的锁, 并执行该代码块时, 其他线程便只能一直等待, 等待获取锁的线程释放锁, 而这里获取锁的线程释放锁只会有两种情况:1) 获取锁的线程执行完了该代码块, 然后线程释放对锁的占有;2...原创 2018-12-24 17:46:12 · 215 阅读 · 0 评论