240 发简信
IP属地:上海
  • Netty源码分析之ByteBuf(二)

    ByteBuf是一个缓冲区,用于和NIO通道进行交互。缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buf...

  • Resize,w 360,h 240
    Netty线程源码分析(一)

    一、NioEventLoopGroup 继承关系图1-1: Netty允许处理IO和接收连接使用同一个EventLoopGroup 1.1 Ni...

  • 并发编程(一):三大特性之原子性

    原子性是指在同一时刻只有一个线程对它进行读写操作,避免多个线程在更改共享数据时出现数据的不准确。 先来看一个例子:使用程序实现一个计数器,期望得...

  • 开发笔记(一):避免重复代码

    最近大家都在忙着功能优化和BUG,而我却比较闲,开发的模块没有什么BUG,也没什么需要优化的,便抽些时间来改下正在开发项目中的一些坏代码。 项目...

  • Resize,w 360,h 240
    并发编程(六):深入分析Thread

    什么是线程安全性 如果一个类可以安全地被多个线程使用,它就是线程安全的。你无法对此论述提出任何争议,但也无法从中得到更多有意义的帮助。那么我们如...

  • Resize,w 360,h 240
    并发编程(五):LinkedBlockingQueue源码解析

    1.1 简介 LinkedBlockingQueue是一个由链表结构组成的有界阻塞队列,此队列是FIFO(先进先出)的顺序来访问的,它由队尾插入...

  • Resize,w 360,h 240
    并发编程(四):阻塞队列

    一、什么是阻塞队列 1.1 简介 阻塞队列(BlockingQueue)是用于进程间通信或同一进程内的线程间通信的组件。它的工作原理是当队列是空...

  • Resize,w 360,h 240
    并发编程(三):深入分析synchronized

    一、synchronized简介 Java提供了强制性的锁机制:synchronized,可用来给对象和方法或者代码块加锁,当它锁定一个方法或者...

  • 并发编程(二):三大特性之可见性

    一、volatile简介 Java语言规范第三版中对volatile的定义如下: java编程语言允许线程访问共享变量,为了确保共享变量能被准确...