首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
user6352215153444
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
88
文章 88
沸点 0
赞
88
返回
|
搜索文章
赞
文章( 88 )
沸点( 0 )
Java并发编程 | 内存模型大展身手
Java内存模型是一套规则,主要用来禁用缓存和编译器优化,配合的有volatile和synchronized关键字,和6个Happens-Before规则。
协程(2) | launch启动协程
launch启动协程就如射箭。launch函数的参数分别协程上下文,启动模式,和block,其中还是协程范围CoroutineScope的扩展函数
协程(3) | runBlocking和async启动协程
launch启动的协程就像是射箭,适合那种一次性的不需要执行结果的任务,runBlocking会阻塞线程,不建议使用,async就像是钓鱼,可以通过Deferrd这个鱼竿得到鱼儿
协程(4) | 挂起函数
挂起函数就是添加了suspend关键字的函数,编译器会把suspend函数通过CPS转换换成CallBack方式。而协程的block本质就是挂起函数,挂起和恢复是协程底层能力,挂起函数是上层表现
协程(5) | Job的生命周期
本系列专栏 https://juejin.cn/column/7090416754840567816 前言 前面文章我们介绍了协程的挂起和恢复,同时说了挂起函数的本质。那协程既然是运行在线程上轻量的T
协程(6) | 结构化并发
协程的结构化并发让协程具备了线程所不具有的功能,让协程存在父子关系。结构化即带结构和层次,可以在协程取消时特别方便。
协程(7) | CoroutineContext
Context可以理解为环境变量的集和。协程中很多类都是它的子类,而本身设计接口类似Map,所以可以用+、[]来方便构建想要的对象
协程(8) | Channel
Channel是一个管道,可以用在协程间通信,而且发送和接收都是挂起函数,用于返回多个结果的情况,比如APP首页实时显示后台GPS数据,同时它是"热"的。
Java并发编程 | 使用"等待-通知"机制让CPU不再无效空转!
本章通过synchronized关键字配合wait()、notify()、notifyAll()来搞清楚等待-通知机制是啥以及其本质。
小结篇:并发编程的问题
并发问题可以总结为安全性问题、活跃性问题和性能问题。安全性是通过解决3个源头来实现线程安全,活跃性要注意死锁、活锁和饥饿,性能问题要注意多使用无锁方案和减少锁持有的时间。
下一页
关注了
1
关注者
1
收藏集
0
关注标签
0
加入于
2022-01-15