随笔分类 -  事故2

1 2 下一页

http长连接维护 【yet】
摘要:。 阅读全文

posted @ 2025-10-07 22:22 silyvin 阅读(10) 评论(0) 推荐(0)

int越界
摘要:1 available ContentLengthInputStream 提前结束 2 intern ops 界面 & TreeNode 3 huge bytearrayoutputstream ContentLengthInputStream 提前结束 阅读全文

posted @ 2025-05-15 19:09 silyvin 阅读(13) 评论(0) 推荐(0)

intern(四)实现怎么样防止内存泄漏
摘要:1 jvm intern c++那边是一个HashTable,需要考虑一些容量问题 2 jdk weakkeyconcurrenthashmap clean参照了ThreadlocalMap,同时配合HashWeakReference的equals和hashCode clean的时机不知道合适 cl 阅读全文

posted @ 2025-04-30 00:57 silyvin 阅读(18) 评论(0) 推荐(0)

ContentLengthInputStream 提前结束
摘要:插曲: amazon S3 只有 http 协议 make sense,因为http协议无非是多几个sciii头而已,二进制在body里直传 0 background GZipInputStream接入Http response的InputStream一直提前返回数据不全 猜测是socket IO 阅读全文

posted @ 2025-04-06 16:06 silyvin 阅读(43) 评论(0) 推荐(0)

生产者消费者线程模型事故
摘要:一次不引用包跑外部依赖的实践(六)代码打磨 阅读全文

posted @ 2025-03-03 01:29 silyvin 阅读(17) 评论(0) 推荐(0)

客户端没设置timeout及rst
摘要:客户端请求,服务器已经无响应 客户端block 服务器restart,linux kill connection and send RST 客户端connection reset,证明客户端在读,服务器tomcat仍然接受了连接,所以最应当设置socket timeout 如果对方服务器没启动,会直 阅读全文

posted @ 2025-02-14 20:01 silyvin 阅读(19) 评论(0) 推荐(0)

double精度
摘要: 阅读全文

posted @ 2025-02-05 20:27 silyvin 阅读(9) 评论(0) 推荐(0)

java object多大 java对象内存模型 数组有多长(十三)future task cancel (二)向下传递中断【重要】
摘要:future task cancel (二)向下传递中断【重要】- java object多大 java对象内存模型 数组有多长(十三) 阅读全文

posted @ 2025-01-29 14:39 silyvin 阅读(6) 评论(0) 推荐(0)

一个maven的坑
摘要:war include A <exclude maven-shared-util>A maven-shared-utilapplication include <A> 应用程序能编译通过,但war运行期会NoClassDefError 要exclude一个东西应该从底层来,应该在A就exclude掉 阅读全文

posted @ 2025-01-18 21:42 silyvin 阅读(18) 评论(0) 推荐(0)

U盾密码学(二)mongo no subject alternative dns name matching【重要】(内含java解析密钥库)
摘要:1 mongo相关的参数 --tlsAllowConnectionsWithoutCertificates 允许客户端连接而不提供证书 --tlsAllowInvalidHostnames 允许服务器证书提供不匹配的主机名 --tlsAllowInvalidCertificates 允许连接到证书无 阅读全文

posted @ 2024-11-22 19:29 silyvin 阅读(329) 评论(0) 推荐(0)

增加代码时怎么样降低风险,超时意识【重要】
摘要:1 try catch throuable 2 避免主线程阻塞,要另起线程,用future.get超时机制 必要时放弃子线程,确保主线程不被阻塞;但应强制回收子线程的指针:内存泄漏事故(二)线程的中断不可信任【重要】强制回收 阅读全文

posted @ 2024-08-30 00:26 silyvin 阅读(15) 评论(0) 推荐(0)

intern(三)自定义intern的内存泄漏
摘要:1 原理 object -> Double map -> Double 两条都是强引用,当object释放时,Double仍然不能释放 应当把map那条改为弱引用 2 实践 一次内存优化 阅读全文

posted @ 2024-08-30 00:19 silyvin 阅读(22) 评论(0) 推荐(0)

内存泄漏事故(三)线程的interrupted flag 的坑【重要】
摘要:背景: 子线程中,分线程处理然后聚拢 future。get 但是在futureget的异常处理中,并未抛出异常,只是调用Thread.currentThread().interrupt(), 因此主线程要监控这个interrup旗标,从而决定是否抛出异常 1 起先 发现没什么用 2 旗标的生命周期 阅读全文

posted @ 2024-08-17 11:33 silyvin 阅读(20) 评论(0) 推荐(0)

内存泄漏事故(二)线程的中断不可信任【重要】配合volatile强制回收子线程成员变量
摘要:1 Map<k, list> not good: map.remove(k) 如果这时有其他指针指向list,则list无法释放 good: map.get(k).clear() map.remove(k) 即使这是有其他指针指向list,导致list无法释放,但是这个list是空的,泄漏的后果不严 阅读全文

posted @ 2024-08-02 00:24 silyvin 阅读(31) 评论(0) 推荐(0)

内存泄漏事故
摘要:Tool { Wrapper wrapper; void write() { Future s= this.new Consumer() {wrapper.getList();} futures.get() } Consumer extends Thread } Wrapper { List lis 阅读全文

posted @ 2024-08-01 21:46 silyvin 阅读(21) 评论(0) 推荐(0)

future task cancel (二)向下传递中断【重要】- (java object多大 java对象内存模型 数组有多长(十三))
摘要:1 测试用例 当future.get响应interruptedexception时,意味着外界想要中断你这个线程和所有子任务 那么应当在interruptedexception响应中对future进行cancel 60 61 行一样结果 应当在38行处中断子任务writeTask 2 实例 1)主线 阅读全文

posted @ 2024-08-01 21:10 silyvin 阅读(23) 评论(0) 推荐(0)

bq事故
摘要:生产者消费者应当使用2吧锁 阅读全文

posted @ 2023-10-13 11:08 silyvin 阅读(16) 评论(0) 推荐(0)

Double NaN
摘要:import java.math.BigDecimal; import java.math.RoundingMode; public class Test { public static void main(String f[]) { Double dto = 1.0/0; Double vo = 阅读全文

posted @ 2023-02-08 12:07 silyvin 阅读(529) 评论(0) 推荐(0)

hashset事故
摘要:尽管MyCookie改写了hashCode和euals,但并没有如预期把里面的相同对象替换掉,导致失败 set cookie set.add set cookie set.add失效 该session过期 hashCode和euals是替代value object的依据 不是替代key object 阅读全文

posted @ 2022-12-09 11:28 silyvin 阅读(26) 评论(0) 推荐(0)

file 没有close
摘要:file open write 10000 close or flush,东西还在内存里就去zip了 zip 发现少了3行 阅读全文

posted @ 2022-11-22 15:20 silyvin 阅读(24) 评论(0) 推荐(0)

1 2 下一页