<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xiaoe3504xiaoe的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xiaoe3504xiaoe]]></copyright><item><title><![CDATA[idea2021报错default operand size is 64设置开机任务自动增加注册表]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/120988099</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/120988099</guid><author>xiaoe3504xiaoe</author><pubDate>Wed, 27 Oct 2021 10:38:35 +0800</pubDate><description><![CDATA[问题背景：
idea高版本连git会提醒如下报错
ANOMALY: use of REX.w is meaningless (default operand size is 64)
因为有安全软件，需要在注册表中增加项
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\TEC\Ocular.3\agent\config 下 新建 [字符串值]  hookapi_disins,数值数据: 1
但是每次都手动添加再启动idea，太麻烦，现改为开机自动增加注册表配置
1.找个目录建俩文件，一个reg]]></description><category></category></item><item><title><![CDATA[json转树，json层级展开为list]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/105772840</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/105772840</guid><author>xiaoe3504xiaoe</author><pubDate>Sun, 26 Apr 2020 17:27:58 +0800</pubDate><description><![CDATA[将json转成树状结构，然后展开成list，有key就取key，没key就取value，通过递归实现

JSONNode是节点类，其中的key就是json的key，value是如果没有子节点的json的value

children是子节点(可以为另一个json，或者json array)


public class JSONNode {
    private String key;

  ...]]></description><category></category></item><item><title><![CDATA[hashmap 环形链表分析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102874465</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102874465</guid><author>xiaoe3504xiaoe</author><pubDate>Sat, 02 Nov 2019 17:32:03 +0800</pubDate><description><![CDATA[网上的hashmap冲突太长，太复杂，看的脑仁疼，自己随便总结下，有不同意的请指正
代码如下
do {
  Entry&lt;K,V&gt; next = e.next; // &lt;--假设线程一执行到这里就被调度挂起了
  int i = indexFor(e.hash, newCapacity);
  e.next = newTable[i];
  newTable[i] ...]]></description><category></category></item><item><title><![CDATA[log4j2  RollingFileAppender 带zip 源码分析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102872402</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102872402</guid><author>xiaoe3504xiaoe</author><pubDate>Sat, 02 Nov 2019 16:17:19 +0800</pubDate><description><![CDATA[背景：
线上出现复现率很小的问题，log4j2带SizeBasedTriggeringPolicy和CronTriggeringPolicy两种策略的自定义log，出现覆盖现象
经分析，不是触发size 2MB的问题，是cron发生的问题


log文件 分析
最重要的是获取

1.被压缩文件的创建时间
2.zip文件的lastmodify时间

因为是用创建时间+5分来命名zip文件的 ★


...]]></description><category></category></item><item><title><![CDATA[apollo spring @value 源码分析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102504911</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/102504911</guid><author>xiaoe3504xiaoe</author><pubDate>Fri, 11 Oct 2019 17:32:21 +0800</pubDate><description><![CDATA[apollo和spring完美结合，自动更新估计也是反射，用起来非常舒服，推荐使用

spring的@value初始化在下面的代码里

初始化 @value

SpringApplication
private void prepareContext(ConfigurableApplicationContext context, ConfigurableEnvironment environme...]]></description><category></category></item><item><title><![CDATA[Finalizer(待整理 还有reference queue)]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/85497933</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/85497933</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 01 Jan 2019 00:53:36 +0800</pubDate><description><![CDATA[1.创建 拥有一个非常规的finalize()方法的对象在创建时步骤如下

1).jvm创建实例

2).jvm创建Finalizer实例，指向上一步创建的对象实例，同时指向一个queue，方便gc

3).Finalizer.class持有Finalizer实例，保证不能下次GC被回收

综上，Finalizable对象创建的时候也创建了一个Fianlizer对象，里面的queue还持有该类对象...]]></description><category></category></item><item><title><![CDATA[Java OQL（对象查询语言）]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/85080339</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/85080339</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 18 Dec 2018 21:36:14 +0800</pubDate><description><![CDATA[摘要：下面内容几乎全部来自《深入理解java虚拟机》-周志明这本书的附录D附录D是作者翻译自EclipseMemoryAnalyzerTool(MAT)的OQL帮助文档我觉得对于分析内存使用情况查询OutOfMemory原因,OQL会有很大帮助,所以先在这里总结一下SELECT1.SELECT*FROMjava.lang.String2.SELECTtoString(s),s.count,s.va...]]></description><category></category></item><item><title><![CDATA[LongAdder源码分析(只分析了两个方法，add和longAccumulate，也是核心方法)]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/81672504</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/81672504</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 14 Aug 2018 18:51:56 +0800</pubDate><description><![CDATA[    public void add(long x) {

        Cell[] as; long b, v; int m; Cell a;
            if ((as = cells) != null || !casBase(b = base, b + x)) {//★三种情况，这里的cas只尝试一次，（在cells为空的情况下）失败就进去
                ...]]></description><category></category></item><item><title><![CDATA[ArrayList并发问题分析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/80747659</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/80747659</guid><author>xiaoe3504xiaoe</author><pubDate>Wed, 20 Jun 2018 18:33:35 +0800</pubDate><description><![CDATA[并发问题老是感觉很棘手，这次碰到了一个ArrayList在线程池中add出现null数据的问题，虽然之前就知道ArrayList是非线程安全的，但是具体为啥不安全，为啥会出现空值，没有深入去理解，这次出现这个问题，经过自己分析，基本知道了这类问题出错会出在哪儿，对于这类问题的分析有点谱了1.问题描述：for循环线程池中启10个任务进行list.add()，加完后，发现第一个值为空，而且list的s...]]></description><category></category></item><item><title><![CDATA[java高并发测试实例（精确到几百纳秒）]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/77882673</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/77882673</guid><author>xiaoe3504xiaoe</author><pubDate>Thu, 07 Sep 2017 15:56:33 +0800</pubDate><description><![CDATA[java多线程高并发的测试redis性能（url里用redis实现去重逻辑）]]></description><category></category></item><item><title><![CDATA[关于对网上一则java synchronized 线程同步的分析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/73188411</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/73188411</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 13 Jun 2017 16:57:58 +0800</pubDate><description><![CDATA[为了看一些synchronized相关的内容，查了网上的一些例子，然后糊涂了一个下午，最终搞懂了，作者可能是好心，但是感觉分析的不彻底，给看的人也容易造成困惑，把我的分析过程贴出来，本来代码比较乱，但分析的过程中收获了一些东西
网址如下：http://blog.youkuaiyun.com/hello_chillax/article/details/44992771
我的代码  稍微修改了下

pac]]></description><category></category></item><item><title><![CDATA[git中ssh-keygen 中生成的 randomart image 用java的实现]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/71542246</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/71542246</guid><author>xiaoe3504xiaoe</author><pubDate>Wed, 10 May 2017 16:02:31 +0800</pubDate><description><![CDATA[首先，先创建一个cube类，方便按路径移动和画图，直接贴码

package com.test.sshkeygen;

import static com.test.sshkeygen.Cube.CubeType.A;
import static com.test.sshkeygen.Cube.CubeType.MMM;

/**
 */
public class Cube {
    pub]]></description><category></category></item><item><title><![CDATA[用jxl将mysql的数据结构导入到excel中，用过poi将oracle表结构导入]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53761153</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53761153</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 20 Dec 2016 11:36:24 +0800</pubDate><description><![CDATA[利用poi和jxl导出mysql和oracle中表的数据结构，导出到excel中，可以做数据字典用]]></description><category></category></item><item><title><![CDATA[为啥拦截器在invocation.invoke()之前的代码，将会在Action之前被依次执行，而在invocation.invoke  ()之后的代码，将会在Action之后被逆序执行？]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53198697</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53198697</guid><author>xiaoe3504xiaoe</author><pubDate>Thu, 17 Nov 2016 13:11:35 +0800</pubDate><description><![CDATA[为啥拦截器在invocation.invoke()之前的代码，将会在Action之前被依次执行，而在invocation.invoke  ()之后的代码，将会在Action之后被逆序执行？]]></description><category></category></item><item><title><![CDATA[匿名内部类，异步回调浅析]]></title><link>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53168806</link><guid>https://blog.youkuaiyun.com/xiaoe3504xiaoe/article/details/53168806</guid><author>xiaoe3504xiaoe</author><pubDate>Tue, 15 Nov 2016 10:27:17 +0800</pubDate><description><![CDATA[搞java也不算短了，突然发现回调这个是什么玩意？竟然没有基础的印象，以为跟递归一样的，结果钻研了一天，才搞明白，确实，回调这种机制是比较反逻辑的，虽然比较绕，但是在以前的java编程者看来应该是比较方便的吧，唉，编程历史的发展果然的越来越人性化呢，跑题了，反正这篇就是自己看的，关于回调，以及延伸出来的各种知识点（异步，匿名内部类等）的归纳总结]]></description><category></category></item></channel></rss>