最近工作中,开发一个功能,可以参照已有类似的功能。二话不说,CtrlCV,修修补补,完事。 写完后,看着这段代码,陷入了沉思。我写了这段代码,得到了什么。一、完成工作任务。二、。。。(想不出来了)。这不是工具人吗? 随后重新审视了这段代码。一、用到了 WebService。二、代码重复率高。三、代码臃肿,没有区分主干。 那,优化?最近手上的挺多的,而…
迁移博客 刚开始时,我的博客和及应用都是直接部署服务器的。在去年,由于服务器中了挖矿病毒( 老李 帮我解决的),就将博客和应用迁移到了 老李 的 NAS 服务器上,通过内网穿透来访问。 今年新购了 2h4g 的云服务器,以前租的服务器是 1h2g 的,当时在那台服务器上部署了博客和一个应用,但应用经常停止,排查发现是 wdcp 面板占内存,导致系统内存不足…
ThreadLocal 结构图 结构变化后带来的好处 早期 ThreadLocalMap 里的 Entry 较多,每个线程都有一个,占用空间大 线程销毁时,后期的 ThreadLocalMap 将会销毁,释放资源 设置默认值,也就是当前线程和 ThreadLocal 对象还未往 ThreadLocalMap 里存数据时 ThreadLocal<String>…
Java 引用分为强引用、软引用、弱引用、虚引用 一、强引用 public class M {@Override protected void finalize () throws Throwable { System.out.println ("m.finalize"); super.finalize (); } } public …
使用 Markdown 来做笔记,但每次在家里要使用时,都要远程公司,提交笔记到 git,再在家里电脑上拉取,这是个重复的过程。重复 == 可以用程序解决 于是写了个脚本,电脑启动时拉取,每天晚上 9 点提交 之前在工作中遇到切换代码分支后,每次都要构建很多组件,也是写了个脚本一键执行 Windows 步骤如下 1. 提交脚本 set codePath=D:\wo…
背景 jdk1.8 之前是没有线程安全的集合工具类,例如 currentHashMap,那怎样实现高效、线程安全的集合工具类呢? 可以利用读写锁实现线程安全,动态代理帮助集合作为工具类,产生更多的使用场景,例如缓存 代码 1. 创建缓存基类和子类 基类里的读写锁 private ReadWriteLock readWriteLock = new Ree…
刚搭好环境,目前网站备案初审也过了,正在送往管局,不过 WordPress 更新还在报错 504 Gateway Timeout。