240 发简信
IP属地:江西
  • 2.1.3 NIO非阻塞网络编程三大理念

    Java NIO 始于Java 1.4,提供了新的Java IO操作非阻塞APi。 用意是替代Java IO 和 Java Networking...

  • 2.1.2 BIO阻塞式网络编程

    BIO - 阻塞IO的含义 阻塞(blocking) IO: 资源不可用时,IO请求一直阻塞,直到反馈结果(有数据或超时)。 非阻塞(non-b...

  • Resize,w 360,h 240
    2.1.1 TCP/UDP协议

    OSI网络七层模型 分成七层的目的就是为了让每一层的开发人员或者说系统设计硬件也好软件也好不需要去关心整个网络层次 各层的主要功能 物理层:物理...

  • Resize,w 360,h 240
    1.3.2 并发编程Map

    HashMap HashMap 虽然Hashtable是一个线程安全的类,但性能不高,在高并发的场景下使用ConcurrentHashMap C...

  • 1.3.1.2 信号量和栅栏和倒计数器

    Semaphore 又称“信号量”,控制多个线程争抢许可。 acquire: 获取一个许可,如果没有就等待。 release: 释放一个许可。 ...

  • 1.3.1 AQS抽象队列同步器详解

    什么是AQS AQS(AbstractQueuedSynchronizer),AQS是JDK下提供的一套用于实现基于FIFO等待队列的阻塞锁和相...

  • 1.2.4 Lock锁接口实现 -- ReentrantLock和ReadWriteLock

    Lock的核心API 方法描述lock获取锁的方法,若锁被其他线程获取,则等待(阻塞)lockInterruptibly在锁的获取过程中可以中断...

  • 1.2.3 Java锁相关 - synchronized详解

    Java中锁的概念 自旋锁:为了不放弃CPU执行事件,循环的使用CAS技术对数据尝试进行更新,直至成功。 悲观锁:假定会发生并发冲突,同步所有对...

  • 1.2.2 线程安全之原子操作CAS

    竞态条件与临界区 多个线程访问了相同的资源,向这些资源做了写操作时,对执行顺序有要求。 临界区: incr 方法内部就是临界区域,关键部分代码的...