文章来源:微信公众号:猿天地 1. 死锁的概念: 是Java多线程情况下,两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞现象,若无外力作用,它们都讲无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在相互等待的进程成为死锁进程。 2. 出现死锁的条件: ( ...
分类:
编程语言 时间:
2019-08-01 22:46:30
阅读次数:
154
packageconcurrent;importjava.util.concurrent.locks.Condition;importjava.util.concurrent.locks.ReentrantLock;/***Auth:zhouhongliang*Date:2019/8/1*线程等待与唤醒机制Condition*按指定顺序执行线程*/publicclassConditionDemo{
分类:
编程语言 时间:
2019-08-01 17:27:23
阅读次数:
147
1、ArrayList线程不安全;CopyOnWriteArrayList线程安全packageconcurrent;importjava.util.ArrayList;importjava.util.Iterator;importjava.util.List;importjava.util.concurrent.CopyOnWriteArrayList;/***Auth:zhouhonglian
分类:
编程语言 时间:
2019-08-01 17:22:43
阅读次数:
129
packageconcurrent;importjava.util.concurrent.*;importjava.util.concurrent.locks.ReentrantLock;/***@Auther:zhl*@Date:2019/7/13*@Description:并发测试,重入锁ReentrantLock解决并发问题*/publicclassConcurrentSample{//并发
分类:
编程语言 时间:
2019-08-01 14:21:35
阅读次数:
90
packageconcurrent;importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.concurrent.ExecutorService;importjava.util.concurrent.Executors;importjava.util.concurrent.Semaphore;importjava.
分类:
编程语言 时间:
2019-08-01 11:48:39
阅读次数:
163
本文主要讲java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的线程函数用法、概述等。首先让我们来了解下在操作系统中进程和线程的区别: 进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1--n个线程。(进程是资源分配的最小单位) 线程:同一 ...
分类:
编程语言 时间:
2019-07-31 17:01:23
阅读次数:
96
###24.01_多线程(多线程的引入)(了解)* 1.什么是线程 * 线程是程序执行的一条路径, 一个进程中可以包含多条线程 * 多线程并发执行可以提高程序的效率, 可以同时完成多项工作* 2.多线程的应用场景 * 红蜘蛛同时共享屏幕给多个电脑 * 迅雷开启多条线程一起下载 * QQ同时和多个人一 ...
分类:
编程语言 时间:
2019-07-28 19:45:58
阅读次数:
114
1、程序和进程: 程序:一个固定的运算逻辑和数据的集合,是一个静态的状态,一般存储在硬盘中 进程:正在运行的程序,是程序的一次运行,是一个动态的状态 2、进程和线程: 进程:一个正在运行的程序,有自己独立的资源分配,是一个独立的个体 线程:一个独立的执行路径。多线程,一个进程中可能有许多子任务,每个 ...
分类:
编程语言 时间:
2019-07-27 13:11:14
阅读次数:
122
一 问题概述 线程或者进程之间有两种关系 同步和互斥,我们通常实现同步方法是使用线程的等待唤醒机制,而等待唤醒机制的使用是建立在互斥的继承上的。但是同步线程并不一定是必须要实现互斥的。比如一个线程打印A,一个线程打印B。这两个线程就没有互斥关系,但是提出这么个需求:交替打印A、B 。我们一般的解决方 ...
分类:
编程语言 时间:
2019-07-22 15:23:34
阅读次数:
352
Thread创建多线程: Runnable创建多线程: ...
分类:
编程语言 时间:
2019-07-21 18:27:31
阅读次数:
88