Android源码学习 |

ThreadPoolExecutor源码学习笔记

安利一波组织:itsCoder 转载请附原文链接:ThreadPoolExecutor源码学习笔记 大部分分析以注释形式写在源码中 本篇笔记将从 ThreadPoolExecutor 的一次使用上来分析源码,主要涉及线程池创建,execute 的步骤,任务添加到阻塞队列,线程从阻塞队列中拿取任务执行,线程的回收,线程池的终止。 涉及到的类有 Executors — 获取线程池 ThreadPoolExecutor — 线程池 Worker — 工作线程 LinkedB ...

  • Joe
    Joe
56 min read
Android源码学习 |

Handler源码学习(三)MessageQueue入队插队

Handler源码学习(一)流程Handler源码学习(二)Message对象池Handler源码学习(三)MessageQueue入队插队 1.消息入队消息队列与Message对象池的结构很像,也是通过对象之间通过next指向形成链表结构 这时候加入一个msg消息,先来看如果消息队列为空的情况 //判断消息队列为空时,会直接将这个msg赋值给mMessage,并将p赋值给msg.next,这时next当然时nullmsg.markInUse();msg.when = whe ...

  • Joe
    Joe
18 min read
Android源码学习 |

Handler源码学习(一)流程

本系列笔记是我阅读Handler及相关类的源码时所记录的一些之前所不知道的知识点,该系列分为三部分,整体流程,Message对象回收原理,MessageQueue管理队列Handler源码学习(一)流程Handler源码学习(二)Message对象池Handler源码学习(三)MessageQueue入队插队 1.创建handler — 默认构造方法会获取当前线程的looper,也可以传入指定的looper/** * Default constructor associate ...

  • Joe
    Joe
17 min read
Android源码学习 |

RxJava 源码学习笔记

转载请附原文链接: RxJava 源码学习笔记 RxJava 使用简介学习了 RxJava有一段时间了,也在自己的项目中全面替换使用,整个项目的代码结构和质量确实有很大的改观,这么牛逼的一个框架,不仅要知其然,更要知其所以然。阅读源码学习原理也是很有必要的,这篇文章算是学习记录吧,圈内已有很多大神的文章深入分析了RxJava的原理,吾等小辈,不敢造次。 如果你还在学习RxJava的使用,可以看看我上一篇文章,希望能有所帮助 一次完整订阅observable被create创建的 ...

  • Joe
    Joe
26 min read
Android |

RxJava 使用简介

注:本系列文章主要用于博主个人学习记录,本文末尾附上了一些较好的文章提供学习。转载请附原文链接: RxJava 使用简介如果你对 RxJava 的原理感兴趣,可以看看下面这篇文章RxJava 源码学习笔记 RxJava利用响应式编程思想,专注于异步任务的处理,通过操作符进行流式操作,可以极大的去除多层嵌套,达到逻辑的简洁明了。 举个栗子🌰 RxJava的观察者模式与普通观察者模式有一个区别是分为“冷”启动和“热”启动,“热”启动即不管有没有观察者,观察者会按照自己的逻辑 ...

  • Joe
    Joe
29 min read