<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_36833593的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_36833593</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_36833593]]></copyright><item><title><![CDATA[相见恨晚，分享两个非常值得开机自启的软件工具]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/131387541</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/131387541</guid><author>qq_36833593</author><pubDate>Sun, 25 Jun 2023 22:52:34 +0800</pubDate><description><![CDATA[最大历史截屏区域数」这个按需设置就好了，太多了反而影响效率，一般 10 以内就行，「最大历史记录数」也就是可以被回复的数量，没必要太多，茶哥这里设置了20个，别忘了我们的 Ditto 中最大记录数设置了 500个，只要你粘贴到剪切板，Ditto 就会自动记录，到时候 我们可以通过 Ditto 的快捷键 「Ctrl + `」恢复图片。，使用 「diagrams」绘制了一个流程图，但是图片被我标注了作者信息，如果你想用这个图，完全不需要打开 「PS」,使用 Snipaste 就可以快速处理图片中的作者信息。]]></description><category></category></item><item><title><![CDATA[有关failed (113: No route to host) while connecting to upstream和404 Not Found nginx/1.10.3问题排查思路]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/126878651</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/126878651</guid><author>qq_36833593</author><pubDate>Thu, 15 Sep 2022 20:38:05 +0800</pubDate><description><![CDATA[connect() failed (113: No route to host) while connecting to upstream  404 Not Found    nginx/1.10.3]]></description><category></category></item><item><title><![CDATA[Vo Mic|旧手机不要扔，一招秒变无线麦克风]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/126563706</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/126563706</guid><author>qq_36833593</author><pubDate>Sat, 27 Aug 2022 22:55:03 +0800</pubDate><description><![CDATA[Vo Mic-旧手机不要扔，一招秒变无线麦克风]]></description><category></category></item><item><title><![CDATA[使用VSCode中报错信息：Git installation not found.]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/119847175</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/119847175</guid><author>qq_36833593</author><pubDate>Sun, 22 Aug 2021 00:26:06 +0800</pubDate><description><![CDATA[VSCode中无法使用git工具提交代码：并且报错：“Git installation not found.”

第一次使用VSCode真的不是很熟悉这个工具，使用Git提交个代码一点也不熟悉，报这个提示内容是因为我们的VSCode这个工具找不到git安装路径，这就需要我们手动指引。
在VSCode工具中进行如下设置：
文件=&gt;首选项=&gt;设置=&gt;输入命令“git.path”=&gt;点击“在settings.json中编辑”。

在git.path那里输入我们git的安装地址：注意分隔符为]]></description><category></category></item><item><title><![CDATA[Xshell连接不上虚拟机服务器是为什么？]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/119086116</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/119086116</guid><author>qq_36833593</author><pubDate>Sun, 25 Jul 2021 19:10:40 +0800</pubDate><description><![CDATA[由于我之前调试WLAN的时候吧这两个给关闭了，所以使用Xshell连接时总是连接不上，仅此花费我半小时找原因，作为一个教训。给小伙伴提供一个思路。


]]></description><category></category></item><item><title><![CDATA[尚硅谷周阳github地址：]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/118963525</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/118963525</guid><author>qq_36833593</author><pubDate>Wed, 21 Jul 2021 12:10:14 +0800</pubDate><description><![CDATA[尚硅谷周阳github地址：https://github.com/zzyybs

]]></description><category></category></item><item><title><![CDATA[01_微服务概述/关于SpringCloud各组件的停更/升级/替换]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/118531239</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/118531239</guid><author>qq_36833593</author><pubDate>Tue, 06 Jul 2021 22:36:34 +0800</pubDate><description><![CDATA[代码地址：https://gitee.com/SuperVITA/cloud2021.git
1、微服务架构概述
1.1什么是微服务
微服务架构是种架构模式，它提倡将单一应用程序划分成组小的服务，服务之间互相协调、互相配合， 为用户提供最终价值。每个服务运行在其独立的进程中，服务与服务间采用轻量级的通信机制互相协作(通常是基于HTTP协议的RESTfulAPI)。每个服务都围绕着具本业务进行构建，并且能够被独立的部署到生产环境、类生产环境等。另外，应当尽量避免统一的、集中式的服务管理机制，对具体的七个服务而]]></description><category></category></item><item><title><![CDATA[IDEA连接mysql后，schemas中无表格以及“Server returns invalid timezone. Go to‘Advanced‘ tab and set ‘serverTime”]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/118322076</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/118322076</guid><author>qq_36833593</author><pubDate>Tue, 29 Jun 2021 07:04:00 +0800</pubDate><description><![CDATA[Server returns invalid timezone. Go to’Advanced’ tab and set ‘serverTimezone’property manually… 的解决办法：

show variables like’%time_zone’;    分号也要输进去

set global time_zone = ‘+8:00’;  分号也要输进去


重启Idea




...]]></description><category></category></item><item><title><![CDATA[使用cls命令清除Idea中的Terminal控制台]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117326902</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117326902</guid><author>qq_36833593</author><pubDate>Thu, 27 May 2021 13:43:58 +0800</pubDate><description><![CDATA[cls命令清除Idea中的Terminal控制台以及清除cmd命令窗口


]]></description><category></category></item><item><title><![CDATA[那些对象可以当做GC Roots对象呢？（试讲）]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117325858</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117325858</guid><author>qq_36833593</author><pubDate>Thu, 27 May 2021 12:16:40 +0800</pubDate><description><![CDATA[那些对象可以当做GC Roots对象呢？（试讲）
1、虚拟机栈（栈帧中的局部变量区，也叫做局部变量表）中的引用对象
2、方法区中的类静态属性引用的对象
3、方法区中常量引用的对象
4、本地方法栈中的JNI（Native方法）的引用对象
1、方法区中的类静态属性引用的对象
private static GCRootDemo2 t2;

2、方法区中的常量引用，GC Roots 也会以这个为起点，进行遍历
private static final GCRootDemo3 t3 = new GCRootDemo3]]></description><category></category></item><item><title><![CDATA[死锁的产生和定位分析:jps和jstack找到死锁查看]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117321948</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117321948</guid><author>qq_36833593</author><pubDate>Thu, 27 May 2021 10:17:36 +0800</pubDate><description><![CDATA[死锁的产生和定位分析
Linux  ps -ef|grep XXXX  ls -l
Windows 下的java运行程序  也有类似的ps的查看进程的命令，但是目前我们需要查看的只是java        	 jps = java ps   jps -l
死锁的定位分析方法：

jps命令定位进程号
jstack找到死锁查看


本地jdk1.8 binm目录下的两组参数命令
死锁：
死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一.种 互相等待的现象,若无外力干涉那它们都将无法推进下去
pa]]></description><category></category></item><item><title><![CDATA[获取CPU核数]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117304620</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117304620</guid><author>qq_36833593</author><pubDate>Wed, 26 May 2021 20:27:34 +0800</pubDate><description><![CDATA[获取CPU核数
System.out.println(Runtime.getRuntime().availableProcessors());   获取CPU核数代码


]]></description><category></category></item><item><title><![CDATA[阻塞队列SynchronousQueue代码演示]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117229271</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117229271</guid><author>qq_36833593</author><pubDate>Mon, 24 May 2021 18:25:59 +0800</pubDate><description><![CDATA[SynchronousQueue：不存储元素的阻塞队列，也即单个元素的队列
生产一个，消费一个，不存储元素，不消费不生产
package com.youliao.thread;

import java.util.concurrent.BlockingQueue;
import java.util.concurrent.SynchronousQueue;
import java.util.concurrent.TimeUnit;

/**
 * @Author Dali
 * @Date 2021/5/24]]></description><category></category></item><item><title><![CDATA[SpinLockDemo代码案例分析]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117195657</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117195657</guid><author>qq_36833593</author><pubDate>Sun, 23 May 2021 15:18:57 +0800</pubDate><description><![CDATA[原来提到的比较并交换（CAS），底层使用的就是自旋，自旋就是多次尝试，多次访问，不会阻塞的状态就是自旋。
自旋锁：spinlock，是指尝试获取锁的线程不会立即阻塞，而是采用循环的方式去尝试获取锁
自旋锁的优缺点：
好处:减少线程上下文切换的消耗, 循环比较获取直到成功为止，没有类似于wait的阻塞
缺点:循环会消耗CPU, 当不断自旋的线程越来越多的时候，会因为执行while循环不断的消耗CPU资源
package com.youliao.thread;

import com.youliao.java.]]></description><category></category></item><item><title><![CDATA[验证ReentrantLock/Synchronized 为什么是一个典型的可重入锁（ 可重入锁就是递归锁）]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117194090</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117194090</guid><author>qq_36833593</author><pubDate>Sun, 23 May 2021 12:59:35 +0800</pubDate><description><![CDATA[可重入锁就是递归锁
指的是同一线程外层函数获得锁之后，内层递归函数仍然能获取到该锁的代码，在同一线程在外层方法获取锁的时候，在进入内层方法会自动获取锁
也就是说：线程可以进入任何一个它已经拥有的锁所同步的代码块
ReentrantLock【美 /rɪˈentrənt  lɑːk/】 / Synchronized 就是一个典型的可重入锁
package com.youliao.thread;

import java.util.concurrent.TimeUnit;
import java.util.con]]></description><category></category></item><item><title><![CDATA[HashSet线程不安全，1、	使用JUC中的CopyOnWriteArraySet底层还是使用CopyOnWriteArrayList进行实例化 2、使用工具类中的Collections.synch]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117168577</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117168577</guid><author>qq_36833593</author><pubDate>Sat, 22 May 2021 18:13:36 +0800</pubDate><description><![CDATA[private static void setNotSafe() {
        //        Set&lt;String&gt; set = new HashSet&lt;&gt;();  //原始测试
//        Set&lt;String&gt; set = Collections.synchronizedSet(new HashSet&lt;&gt;());  //解决java.util.ConcurrentModificationException 方法1
       ...]]></description><category></category></item><item><title><![CDATA[HashMap线程不安全:解决办法：1、使用Collections.synchronizedMap(new HashMap＜＞())；2、使用 ConcurrentHashMap]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117168472</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117168472</guid><author>qq_36833593</author><pubDate>Sat, 22 May 2021 18:10:52 +0800</pubDate><description><![CDATA[HashMap线程不安全:解决办法：
1、使用Collections.synchronizedMap(new HashMap&lt;&gt;());
2、使用 ConcurrentHashMap
 public static void main(String[] args) {
        //listNotSafe();
        //setNotSafe();
//        Map&lt;String, String&gt; map = new HashMap&lt;&gt;();//原]]></description><category></category></item><item><title><![CDATA[并发修改异常三个解决方案比较对比:1、Vector；2、Collections.synchronized()；3、采用JUC里面的方法]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117166746</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117166746</guid><author>qq_36833593</author><pubDate>Sat, 22 May 2021 17:20:30 +0800</pubDate><description><![CDATA[package com.youliao.thread;

import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;

/**
 * @Author Dali
 * @Date 2021/5/22 12:43
 * @Version 1.0
 * @Description ： 集合类不安全的问题
 * 1、ArrayList
 */
public class ContainerNotSafeDemo {
    public s]]></description><category></category></item><item><title><![CDATA[Arrays和ArrayList不同写法比较]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117157294</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117157294</guid><author>qq_36833593</author><pubDate>Sat, 22 May 2021 13:02:31 +0800</pubDate><description><![CDATA[public static void main(String[] args) {
        //new ArrayList&lt;Integer&gt;().add(1);
        
        //写法1：
        List&lt;String&gt; list1 = Arrays.asList("a","b","c");
        list1.forEach(System.out::println);

        //写法2：
        List&lt;S..]]></description><category></category></item><item><title><![CDATA[ABA问题的产生/解决——AtomicStampedReference(原子标记参考)]]></title><link>https://blog.youkuaiyun.com/qq_36833593/article/details/117156455</link><guid>https://blog.youkuaiyun.com/qq_36833593/article/details/117156455</guid><author>qq_36833593</author><pubDate>Sat, 22 May 2021 12:36:30 +0800</pubDate><description><![CDATA[ABA问题的解决
package com.youliao.thread;

import java.sql.Time;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicReference;
import java.util.concurrent.atomic.AtomicStampedReference;

/**
 * @Author Dali
 * @Date 2021/5/22 11:54
 ]]></description><category></category></item></channel></rss>