首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
线程
订阅
愿得一人心同学22332
更多收藏集
微信扫码分享
微信
新浪微博
QQ
8篇文章 · 0订阅
美团:某动态线程池框架是官方开源的么?
最近,有很多同学在微信上问我这么一个问题: Hippo4j 动态线程池框架是美团开源的么? 类似于这样的问题还挺多,在这里统一回复下: 美团官方并没有开源任何关于动态线程池的框架。
高并发场景下的Web异步任务WebAsyncTask
浏览器/客户端发起一个请求,Web服务器开启一个线程来处理请求,当请求处理完成以后,Web服务器返回处理结果,这就是同步调用。 在普通的场景下,如果服务器负载不大,并且后端服务也给力,同步调用并没有什么问题。 但在高并发场景下,请求服务端的线程总数是有限的,如果某个线程一直处于…
死磕 java同步系列之ReentrantLock VS synchronized——结果可能跟你想的不一样
synchronized是Java原生提供的用于在多线程环境中保证同步的关键字,底层是通过修改对象头中的MarkWord来实现的。 ReentrantLock是Java语言层面提供的用于在多线程环境中保证同步的类,底层是通过原子更新状态变量state来实现的。 我猜测应该是Re…
JAVA并发之多线程基础(6)
针对于大家熟悉的Executors进行入手,我们经常性的使用里面的线程池。当然,根据阿里巴巴的规范手册上来说,不建议我们直接通过这个类去创建一个线程池,需要通过ThreadPoolExecutor自行去创建,这样会让我们懂得线程池中的线程各个时间的状态变化,以防止线程池中的线程…
多线程中那些看不见的陷阱
多线程编程就像一个沼泽,中间遍布各种各样的陷阱。大多数开发者绝大部分时间都是在做上层应用的开发,并不需要过多地涉入底层细节。但是在多线程编程或者说是并发编程中,有非常多的陷阱被埋在底层细节当中。如果不知道这些底层知识,可能在编写过程中完全意识不到程序已经出现了漏洞,甚至在漏洞爆…
重试利器之Guava Retrying
在很多业务场景中,为了排除系统中的各种不稳定因素,以及逻辑上的错误,并最大概率保证获得预期的结果,重试机制都是必不可少的。 尤其是调用远程服务,在高并发场景下,很可能因为服务器响应延迟或者网络原因,造成我们得不到想要的结果,或者根本得不到响应。这个时候,一个优雅的重试调用机制,…
阿里面试题:Mybatis中的Dao接口和XML文件里的SQL是如何建立关系的?
如果你看过笔者关于Mybatis源码分析的往期博文,相信你肯定可以给出一个不错的答案。 但鉴于系列文章篇幅较大,而且重点是源码部分的解读,所以笔者想再针对这个问题,再梳理下整个流程。 本文配合下列文章,食用更佳。 首先,Mybatis在初始化SqlSessionFactoryB…
线程池是怎样工作的?
我们在工作中或多或少都使用过线程池,但是为什么要使用线程池呢?从他的名字中我们就应该知道,线程池使用了一种池化技术,和很多其他池化技术一样,都是为了更高效的利用资源,例如链接池,内存池等等。 数据库链接是一种很昂贵的资源,创建和销毁都需要付出高昂的代价,为了避免频繁的创建数据库…