![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
qq_2746843972
清清水,幽幽人。
展开
-
Java中的可重入锁ReentrantLock以及synchronized实现多人抢票
在前面的抢票中出现了多个人抢到了同一张票,还有负数。可以发现多线程出现了问题。这是由于同一进程的多个线程共享一块存储空间,在带来方便的时候,也带来了访问冲突问题,为了保证数据在方法中被访问时的正确性,在访问时加入了锁机制synchronized当一个线程获得对象的排它锁,独占资源,其他线程必须等待,使用后释放锁。判断一个多线程是否有问题的标准:是否是多线程环境是否存在共享数据是否存在多条语...原创 2019-06-18 21:31:36 · 729 阅读 · 4 评论 -
java中线程的三种创建方式以及特点
线程的概念首先了解进程与线程的区别与联系在操作系统中,通常将进程看作是系统资源的分配单位和独立运行的基本单位。一个任务就是一个进程。比如,正在运行的火狐浏览器,同时还可以打开一个网易云音乐,系统就会产生两个进程。通俗的说,一个进程既包含了它要执行的指令,也包括了执行指令时所需要的各种系统资源,如CPU,内存,输入输出端口。不同进程所占用的资源相对独立。进程具有动态性,并发行,独立性,异步性。...原创 2019-06-09 23:07:00 · 354 阅读 · 0 评论 -
Java多线程的优先级,礼让,睡眠,中断,守护,加入
一.线程设置以及获取优先级(1)线程的执行有两种调度模型分时调度模型 所有线程轮流使用 cpu 的使用权,平均分配每个线程占用 cpu 的时间片。抢占式调度模型 优先级高的线程先使用 cpu ,如果线程的优先级相同,那么会随机选取一个,另外优先级高的线程获取 cpu 的时间片会相对多一些,Java使用的是抢占式调度模型。(2) 线程设置优先级和获取优先级public ...原创 2019-06-18 16:24:08 · 433 阅读 · 0 评论 -
java中的死锁
何谓死锁 死锁就是多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,从而导致两个或多个线程都在等对方释放资源,此时,若无外力作用,那么系统就会产生死锁。死锁现象 多个同步代码块互相嵌套,多个线程互相持有对方的锁,而不释放就会发生死锁现象。产生死锁的四个必要条件互斥条件:即在一段时间内,某资源只能被一个进程使用。如果此时还有其它进程请求该资源,则请求进程只能等待,...原创 2019-06-18 17:35:34 · 93 阅读 · 0 评论