240 发简信
IP属地:广东
  • HashMap与ConcurrentHashMap

    在Java编程中使用到集合是经常会用到List,Set,Map这三大集合接口,而Map作为集合的一种也是经常广泛的被使用,而Map的最常用到的一个实现类就要说到HashMap...

  • 120
    Condition接口

    任意一个Java对象,都拥有一组监视器方法(定义在java.lang.Object上),主要包括wait()、wait(long timeout)、notify()以及not...

  • 骑手哥别洗,你都没看完就开始洗脑壳了

    Lock接口与实现类

    锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源,比如读写锁)。在Lock接口出现之前,...

  • 120
    Lock接口与实现类

    锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源,比如读写锁)。在Lock接口出现之前,...

  • 120
    AQS队列同步器实现分析

    队列同步器AbstractQueuedSynchronizer(以下简称同步器),是用来构建锁或者其他同步组 件的基础框架,它使用了一个int成员变量表示同步状态,通过内置的...

  • 120
    AQS队列同步器

    队列同步器AbstractQueuedSynchronizer(以下简称同步器),是用来构建锁或者其他同步组件的基础框架,它使用了一个int成员变量表示同步状态,通过内置的F...

  • 120
    线程应用实例-手写连接池(超时等待模式)

    我们经常在使用数据库连接池时会遇到如网络不好连接池报等待超时异常,总是感觉别人写的框架很牛逼,在看了上一节的等待通知机制之后,我们也可以自己动手写一个连接池,并且如果超出一定...

  • Java并发编程基础-线程间通信

    线程开始运行,拥有自己的栈空间,就如同一个脚本一样,按照既定的代码一步一步地执行,直到终止。但是,每个运行中的线程,如果仅仅是孤立地运行,那么没有一点儿价值,或者说价值很少,...

  • 120
    Java并发编程基础-线程

    现代操作系统在运行一个程序时,会为其创建一个进程,而现代操作系统调度的最小单元是线程,也叫轻量级进程,在一个进程里面可以创建多个线程,这些线程都拥有各自的计数器,堆栈和局部变...

  • @LucyVictor 谢谢路西哥的鼓励!

    Java内存模型-双重检查锁定(线程安全的单例模式)

    在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。下面我们以单例模式为例子来分析双重检...

  • Java内存模型-双重检查锁定(线程安全的单例模式)

    在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。下面我们以单例模式为例子来分析双重检...

  • 120
    Java并发机制的底层实现原理-synchronized

    在Java多线程并发编程中synchronized一直都是元老级角色,很多人都会称呼它为重量级锁。但是随着Java SE1.6对synchronized进行了各种优化之后,有...

  • Java并发机制的底层实现原理-volatile

    在多线程并发编程中synchronized和volatile都扮演着重要的角色,volatile可以说是一个轻量级的synchronized,它在多线程开发中保证了共享变量的...