1. 前言1.1 说明【说明:部分原创 & 整合了多篇网络文章,链接附在文末。】 AOP(Aspect Orient Programming),作为面向对象编程的一种补充,广泛应用于处理一些具有横切性质的系统级服务,如事务管理、安全检查、缓存、对象池管理等。 AOP 实现的关键就在于 AOP ...
深入理解 ThreadLocal
ThreadLocal 的内存泄露?什么原因?如何避免?-知乎 看了一篇文章,发现最后的结论有问题,没必要static,而且static的ThreadLocal变量在ThreadLocalMap对应的Entry的key永远不会是null,根本就不会被回收。而且强引用的ThreadLocal造成的oo ...
关于 java 深拷贝中的 ClassLoader
问题场景在使用 java 序列化进行深拷贝时,出现了类异常,现在将代码简化后进行复现: import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBoot ...
【摘录整合】lambda 性能探析
lambda 使用:非捕获 lambda 性能与静态方法接近(如各种 stream 处理 );捕获 lambda 中如果用到了方法,反编译会发现实际上是原方法 copy 过去;如果使用到了方法栈变量,每次调用 lambda 会生成一个对象;如果只引用成员变量,lambda 对象跟随父对象生命周期。 ...
ConcurrentSkipListSet 的使用
相关阅读:并发容器之ConcurrentSkipListSet java.util.concurrent 包下 并发安全 的 有序 Set(NavigableSet),基于 ConcurrentSkipListMap 实现。可以进行有序遍历、范围查找,并且并发安全。底层原理即 跳表 数据结构。 新 ...
优雅关闭 dubbo
背景场景:游戏房间服务 操作:对于房间中一些耗时操作,如申请语音资源,采取以下方式提升性能瓶颈: 先创建一个资源池,初始化一些用户 使用类似 HashMap 扩容机制,保持预申请的语音房间的比例 申请的数据异步落到 db 服务器关闭前注销资源 定时任务关闭达到一定时间的语音房间(如 20 小时) ...
2020 年底 java 后端面试小结
技术面试分享结构:一轮通用 + 一轮综合设计 + 一轮 leader 问项目经验 主要通用技术问题:计组的基本问题,计算机网络(tcp-http 为主),数据库,缓存,消息中间件,java 并发,spring,分布式等知识。有一个非常好用的 csnotes 开源项目,以此为大纲完全 ok:http ...
使用 Scriptable 实现 IOS 自定义小组件
Scriptable 简介 Plain JavaScript: Supports JavaScript ES6. Scripts are stored as plain JS files on disk. Native APIs: Integrate with the native APIs of ...
【=W=】这个答题系统怎么答案都在前端
一条求助信息昨天朋友突然发来微信,说自己在帮父亲做一份每日考题,是强制要求完成的。她从朋友手中弄了一份 题号->答案 的表格,其中题号是 2-4 位的英文编码,但是线上小程序都是一道道题目,题号都是顺序的数字,于是问我怎么能看到题号? 编码大概如下: |-------|-------|| 题号 ...
64匹马8个跑道问题【转】
全排序原文地址 方法一:归并方法,49场1). 把64匹马分成8组,先把每组排个序,共8场比赛。 2). 把这8组8匹马两两合并为4组16匹马的有序组,每次合并需要3场比赛。总共需要4次合并,总共需要赛 12 场; 这里就是本题的关键所在:从其中任意选出两组,合并后的前4名肯定在两组的前4名这8匹马 ...