zoukankan      html  css  js  c++  java
  • Java精通并发-Condition方法实现分析与讲解

    在上两次已经对Condition这个类的javadoc进行了完整的解读,接下来则对它里面的方法进行一下纵览,并进行官方的解读,如下:

    下面一一来读一下各个方法的说明:

    await():

    上面这段说明已经道出了这个方法的核心作用,非常重要,继续来看一下这四种情况是哪四种?

    接下来是实现上的考量,简单看一下既可:

    awaitUninterruptibly():

    在了解了第一个await()方法之后,这个就比较好理解了,就是它的一个特例,也就是不响应中断而已,可以稍看一下它的说明:

    awaitNanos(long):

    这个得看一下,跟之前的有一些不一样的地方,不过跟await()一样的地方这里就不过多说明了,只看不一样的:

    好,接下来就到了不一样需要细细阅读的地方了:

     

    实现上的考量就不看了,看一下参数返回的解释:

    await(long, TimeUnit):

    它中上面的awaitNanos本质上是一样的,只是提供了一个单位给用户来指定而已,大致瞅一下:

    awaitUntil(Date):

    这个也比较好理解,就是指定了一个具体的日期时间,直接看一下官方给的一个示例,就不细看了,基本雷同:

    signal():

    signalAll():

    了解了signal方法之后,对于signalAll()就比较好理解了:

    以上就对Lock、Condition类的官方说明全部给阅读完了,现在还停在纯理论的层面,不过这种阅读能对各个类之间的关系有一个大局关,知道它出现的场景比只是去用它的意义要大得多得多,所以通过阅读官方文档的收获其实也是最明显的,坚持!!

  • 相关阅读:
    .NET Core 之 MSBuild 介绍
    棒!使用.NET Core构建3D游戏引擎
    在ASP.NET Core MVC中构建简单 Web Api
    TypeScript 中的 SOLID 原则
    《C# 并发编程 · 经典实例》读书笔记
    ASP.NET Core 中的那些认证中间件及一些重要知识点
    消息队列 Kafka 的基本知识及 .NET Core 客户端
    【数列区间询问中的分块思想】
    2013 Multi-University Training Contest 8
    2013 Multi-University Training Contest 7
  • 原文地址:https://www.cnblogs.com/webor2006/p/11906700.html
Copyright © 2011-2022 走看看