这次我们聊聊observeOn线程切换的实现.阅读之前请先阅读之前的几篇博客
今天我们聊聊subscribeOn线程切换的实现.阅读之前请先阅读之前的几篇博客
这篇文章主要介绍在RxJava中的Scheduler实现。阅读之前请先看数据的发送与接收
在RxJava中有非常多的Operator方法,比如map,flatMap,lift等。在这些Operatior中比较重要的是lift方法,因为很多操作都是基于lift来实现的,扩展lift还可以实现自定义Operator. 这篇内容主要是介绍lift,map,flatMap的实现(关于这些操作的作用请查阅官网,这里不做过多介绍)。阅读之前请先看本系列文章的第一篇
18年我就再尝试使用rxJava来解决网络IO问题.但是一直使用得不是很得心应手,原因是不太知道它的底层原理.这次春节正好有时间可以把RxJava的原理看一遍。
虽然锁可以保证资源的线程安全,但是锁带来的性能损失也是不可以忽略的.尤其是在读多写少的场景下,如果你使用synchronized或者ReentrantLock会浪费非常大的性能.此时使用ReentrantReadWriteLock会更合适
synchronized
ReentrantLock
ReentrantReadWriteLock
今天遇到了个Spring的@Transactional注解用法的问题(从此也可以看出自己数据库的薄弱,还是需要补这个基础).经过一个下午的源码阅读和debug终于解开了心中所惑,遂写下来记录一下.
@Transactional
接下来我们继续聊get,remove方法。以及ThreadLocal使用不当会发生的问题。
最近工作中正好使用了ThreadLocal,之前对它底层实现不是非常清晰.今天正好看一遍