首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
houziershi
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
ScheduledThreadPoolExecutor源码深入分析
Java版本:8u261。 ScheduledThreadPoolExecutor即定时线程池,是用来执行延迟任务或周期性任务的。相比于Timer的单线程,定时线程池在遇到任务抛出异常的时候不会关闭整个线程池,更加健壮(需要提一下的是:ScheduledThreadPoolEx…
终于我用JOL打破了你对java对象的所有想象
使用面向对象的编程语言的好处就是,虽然没有女朋友,但是仍然可以new对象出来。Java是面向对象的编程语言,我们天天都在使用java来new对象,但估计很少有人知道new出来的对象到底长的什么样子,是美是丑到底符不符合我们的要去? 对于普通的java程序员来说,可能从来没有考虑…
synchronized锁膨胀 偏向锁 轻量级锁 重量级锁
如上一个简单的线程他从启动到调用run方法是怎么一个流程,往下看线程start方法的源码发现核心的方法应该就是调用 private native void start0(); 这个方法是native用c写的。这个方法底层在调用jvm,jvm直接调用操作系统pthread_cre…
实战:5分钟搞懂OkHttp断点上传
断点上传相较于断点下载来说,最大的区别就在于断点位置的记录,上传记录在服务端,下载记录在客户端,因此,客户端需要在上传前,通过接口去拿到文件的断点位置,然后在上传时,将文件输入流跳转到断点位置
深入探索编译插桩技术(四、ASM 探秘)
成为一名优秀的Android开发,需要一份完备的 知识体系,在这里,让我们一起成长为自己所想的那样~。 在 《深入探索编译插桩技术(二、AspectJ)》 一文中我们深入学习了 AspectJ 在 Android 下的使用。可以看到 AspectJ 非常强大,但是它也只能实现 …
轻松看懂Java字节码
计算机只认识0和1。这意味着任何语言编写的程序最终都需要经过编译器编译成机器码才能被计算机执行。所以,我们所编写的程序在不同的平台上运行前都要经过重新编译才能被执行。 而Java刚诞生的时候曾经提过一个非常著名的宣传口号: "一次编写,到处运行"。 为了实现该目的,Sun公司以…
啃碎并发(二):Java线程的生命周期
当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过 新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)5种状态。尤其是当线程启动以后,它不可能一直"霸占"着CPU独…
Java实现生产者-消费者模型
考查Java的并发编程时,手写“生产者-消费者模型”是一个经典问题。有如下几个考点: 本文主要归纳了4种写法,阅读后,最好在白板上练习几遍,检查自己是否掌握。这4种写法或者编程接口不同,或者并发粒度不同,但本质是相同的——都是在使用或实现BlockingQueue。 网上有很多…