superme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock详细说明,口臭的原因和治疗方法

一.概述

Java并发编程中涉及到许多辅佐类,如CountDownLatch、CyclicBarrier、Semaphore和Lock。

二.Cou杨晓晾莲花落视频全集ntDownLatch

CountDownsuperme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法Latch是一个同步东西类,它答应一个或多个线程一向等候,直到其他线程的操作履行结束后再履行。

CountDownLatch是经过一个计数器完结的,计数器的初澳门天气预报始值为线程的数量。每逢一个制服线程完结了自己的曾子岚使命后,计数器的值就会减1。当计数器的值为0的时分,就意味着一切的线程现已完结了使命,然后堵塞的线程就能够康复并履行剩余的操作序列。

如下优美语段图所示,发动生计战役10个线程,CountDownLatch目标实例的计数器初始值也初始化为10。当每个线程都履行完自己的操作序列后,对CountDownLatch目标实例的计数器履行减1操作,直到计数器为0,await()办法才会康复履行其操作序列剩余的使命。

履行成果

三.CyclicBarrier

CyclicBasuperme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法rrier是一个同步辅佐类,它答应一组线程彼此等候直到一切线程都抵达一个公共的屏障点。

如下图所示,发动10个线程,当每个线程完结归于自己的操作序列后,在履行共有的履行序列之前,能够调用awasuperme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法it()办法履行堵塞等候,当一切的线程都堵塞等候,即已免费言情小说经到达公共屏障点,此刻无限流小说排行榜一切的线程能够继续履行共有的操作序列。

履行成果

四.Semaphore

Semaphore(信号量)用于操控mg是什么单位告诉拜访特定资源的线程数量,和谐各个线程并确保合理地运用共用线程。

举个比如,商场有五个泊车位,10个开小车的人先后来到商骉场,因为泊车位有限,所以只能答应5个人先进入superme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法泊车位,此刻泊车答应已用完,剩余的五个人只诗篇大万能等候,当一段时间后泊车位空兰博基尼urus出3个的时分,阐明此刻多出了三个泊车答应,等候的五个人就能够答应其间的三个人进入泊车位,最终剩张邦元下的二人依然需superme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法要等候已泊车的lwmmg人脱离,多出至少2个泊车位,他们才干进入。

如下图所示Semaphore目标实例先初始化一个线程答应,即任何时分都只要一条线程在履行它的操作序列,而其他的线程只能等候,acquire()办法便是获取线妍程答应,没获取到就会一愿望深渊直堵塞,release()办法是开释线程大剑之抱负乡答应。

履行成果

五.Lock

Lo京剧名段ck加锁的时分,其superme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法他线程会履行堵塞,直到superme,线程CountDownLatch、CyclicBarrier、Semaphore、Lock具体阐明,口臭的原因和医治办法获取锁的线程履行完其操作序列并开释锁,其他的线程才会竞赛获取锁。

如下图所示发动100个线程,每次都只答应一个线程获取到锁并履行操作序列,而其他的线程则是出于堵塞状态。

履行结dio果

您的重视是我的继续动力,我们下期共享~bye

评论(0)