![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android笔记
48k纯贱
这个作者很懒,什么都没留下…
展开
-
对于RxJava使用subscribeOn和observeOn切换线程的源码解读
当我们需要在RxJava的事件流中切换线程来执行代码,也就是使用RxJava的异步事件流编程,我们就需要使用subscribeOn和observeOn来进行切换线程。那么当我们使用subscribeOn和observeOn来切换线程的时候,源码是怎么做的呢?subscribeOnObservable.create(new ObservableOnSubscribe<Object>() { @Override public void subsc原创 2020-12-07 22:24:25 · 189 阅读 · 0 评论 -
对于RxJava的map操作符的源码解读
map操作符在RxJava中是经常被使用的一个操作符,那么在使用map操作符的时候源码是怎么实现这一功能的呢?先上一段代码Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<String> emitter) throws Exception {原创 2020-12-06 17:40:01 · 248 阅读 · 0 评论 -
关于synchronized锁升级和volatile关键字的随笔
对volatile关键字的理解volatile是Java语言的一个关键字,它可以解决线程可见性的问题。原理就是volatile关键字会开启cpu的MESI缓存一致性协议,即在主内存和工作内存之间开启一条总线。这条总线会记录所有线程各自使用的数据。当检测到有数据将要执行write/store命令写入主内存的时候,别的线程会通过总线嗅探机制知道这件事(该数据发生修改)。此时cpu将会立即把这个数据写入主内存,然后其他线程将会把自己工作内存中相对应的数据副本删除,之后再从主内存获取新的副本。使用v.原创 2020-11-11 18:27:10 · 146 阅读 · 0 评论 -
关于Java泛型的随笔
android笔记——泛型的随笔陈垍谋2020/11/3对于Java泛型的相关使用,我就不再说明了,这里主要是对于《Java核心技术 卷Ⅰ》里关于Java泛型介绍得表述不清的地方做个记录。Java泛型的类型擦除和多态的冲突及解决方法Java的泛型是伪泛型,即在Java代码经过编译器编译之后转换成字节码文件时,代码里的泛型都会转换成原生类型,这叫做Java的类型擦除。看一个例子//一个自定义泛型类Pairclass Pair<T> { private T valu原创 2020-11-03 20:43:11 · 155 阅读 · 0 评论