首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
drunksnow
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
2
文章 2
沸点 0
赞
2
返回
|
搜索文章
最新
热门
Java内存区域
运行时数据区包括方法区、虚拟机栈、本地方法栈、堆和程序计数器。 占用较小的内存空间,是当前线程执行字节码的行号指示器,为线程私有。各条线程的计数器互不影响,独立存储。如果线程正在执行的是一个Java方法,这个计数器记录的是正在执行的虚拟机指令的地址; 如果正在执行的是Nativ…
JetPack 之 LifeCycle
Lifecycle owners, 即拥有(因而“拥有”)生命周期的组件。 Activity和Fragment是生命周期所有者。 生命周期所有者实现LifecycleOwner接口。 Lifecycle 该类保存生命周期所有者的实际状态,并在发生生命周期更改时触发事件。 Lif…
Kotlin协程基础
本质上,协程是轻量级的线程。 它们在某些CoroutineScope的上下文中与启动协程生成器一起启动。 在这里,我们正在GlobalScope中启动一个新的协程,这意味着新协程的寿命仅受整个应用程序寿命的限制。 通过将GlobalScope.launch {...}替换为Th…
Kotlin简介
修改变量的值: count = 15。 继续上门的例子,当初始化languageName时,Kotlin编译器能够根据分配的值进行类型推断,因为"Kotlin"是String类型,编译器推断languageName也是一个String。注意Kotlin是静态类型语言,也就意味着…
CopyOnWriteArrayList
第一,CopyOnWriteArrayList 在修改时,复制出一个新数组,修改的操作在新数组中完成,最后将新数组赋值给原有的数组引用。 第二,CopyOnWriteArrayList 的写加锁,读不加锁。 CopyOnWriteArrayList 有很多优势,但数组复制是沉重…
RxJava操作符-merge
Merge通过合并多个Observable为1个,但是不保证它们间的发射顺序。如果期望保持Observable的发射顺序,请用concat操作符。 第二个even 也是一样,重复执行4-3-1后面的流程,但是因为两着差不多是并行的,所以发射的数据的顺序不保证。
RxJava操作符--concat
Concat会从两个或多个Observable发射出去,而不会交错它们。发射数据时,它将保持可观察者的顺序。这意味着它将发出第一个可观察项的所有项,然后将发出第二个可观察项的所有项,依此类推。 3-1. ConcatMapDelayErrorObserver的onSubcsri…
Thread, ThreadLocal和ThreadLocalMap
看到主线程、子线程1和子线程2的结果互不影响。 所以ThreadLocal的主要作用就是保存线程的变量,作用域为线程。 1. ThreadLocal的set方法 把对象指给当前线程的threadLocals,那么下次就不用再new了,这里采用的是懒加载的方式。 我们来看一下Th…
线程池的分类
手动new ThreadPoolExecutor 根据需求进行配置。 使用ExecutorService工厂进行配置。 通过ExecutorService的newFixedThreadPool方法来创建。 注释说的是比较清晰的。这个线程池的线程数量是固定的,核心线程和总的线程数…
IntentService 原理解析
IntentService 适用于处理异步请求,客户端通过startService(Intent)的方式发送请求,服务按需启动,使用工作线程来顺序处理请求,当所有的请求处理完毕后自动退出。 IntentService继承自Service,并且是个抽象类,子类需继承才能使用。它比…
下一页
个人成就
文章被点赞
2
文章被阅读
4,968
掘力值
164
关注了
5
关注者
0
收藏集
0
关注标签
1
加入于
2020-07-03