首页
学习
活动
专区
工具
TVP
发布

JavaQ

专栏作者
165
文章
187757
阅读量
52
订阅数
【每天一道面试题】说一下ThreadLocal原理及会不会发生内存泄漏
ThreadLocal的实现原理是每一个Thread维护一个ThreadLocalMap映射表,映射表的key是ThreadLocal实例,并且使用的是ThreadLocal的弱引用 ,value是具体需要存储的Object。下面用一张图展示这些对象之间的引用关系,实心箭头表示强引用,空心箭头表示弱引用。
JavaQ
2019-11-12
5290
高并发编程-ExecutorCompletionService深入解析
假设现在有一大批需要进行计算的任务,为了提高整批任务的执行效率,你可能会使用线程池,向线程池中不断submit异步计算任务,同时你需要保留与每个任务关联的Future,最后遍历这些Future,通过调用Future接口实现类的get方法获取整批计算任务的各个结果。
JavaQ
2019-06-11
9.4K0
处理网络超时问题的最佳实践
对于云上的用户来说,业务日志里面报超时问题处理起来往往比价棘手,因为1) 问题点可能在云基础设施层,也有可能在业务软件层,需要排查的范围非常广;2) 这类问题往往是不可复现问题,抓到现场比较难。在本文里就分析下如何来分辨和排查这类问题的根本原因。
JavaQ
2019-05-17
2.9K0
不得不推荐的开发利器
子曰:“工欲善其事,必先利其器“,事先把工具准备好,可以起到事半功倍的效果,本篇将介绍开发过程中经常使用到的开发工具们。
JavaQ
2018-07-25
9450
写这样的方法让人很反感
写作文要做到段落清晰、每段思路流畅、每段主旨明确,要有一条清晰的线穿插整篇内容,编写程序代码和写作文是一个套路。一个类就像一篇小作文,类的单一职责就是小作文要叙述的主旨,类的方法就是小作文的段落,类的方法组合在一起就是小作文的整篇内容。类的方法要像文章的段落一样,有主旨,即只做一件事;思路清晰,即先做什么、后做什么。方法没写好就像作文的段落没写好一样,会让人有一种“写的都是啥”的反感。下面出现的方法,会让阅读代码的人很反感。 太随意的方法名 getAbc()。get是得到、抓住的意思,getAbc是想表达获
JavaQ
2018-04-04
7020
烂代码吐槽汇 | 奇葩命名
代码首先是给人看的,其次才是给机器看的。 烂代码特征:可读性差、逻辑混乱、性能低下。 1.奇葩项目(模块)名 项目(模块)名称使用汉语拼音、英汉双拼、超长的字母集。 项目(模块)名称应该使用言简意赅的英文单词或短语,可代表项目(模块)意图即可。 2.奇葩包名 包名称使用毫无意义的单个字母或另类的单词。 正常的包结构名称应该以官网或产品域名的倒序为基础包,然后细分service、dao等。基本上常用的包名也就那几个,没必要为了体现出自己的不同而新创包名,如果真的有必要建新包名,应该使用名词性质的单词。 3
JavaQ
2018-04-04
8280
开发环境利器vagrant
引言 团队合作的编码过程中,有时会因为个人开发环境的不同,而出现“代码在我的机器上运行没问题,在别人的机器上有问题”的情况。团队有新人加入时,需要为准备开发环境而浪费时间,并且准备的环境并不那么的统一,或者是版本不同,或者是参数配置不同。这些问题,vagrant都可以解决。Vagrant是一款用来构建虚拟开发环境的工具,可用于统一团队开发环境,避免环境不一致导致的莫名错误,非常适合团队合作开发。Vagrant使用Ruby开发,基于VirtualBox等虚拟机管理软件的接口,提供了一个可配置、轻量级的便携式虚
JavaQ
2018-04-04
7860
没有更多了
社区活动
RAG七天入门训练营
鹅厂大牛手把手带你上手实战
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档