<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[norang的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/norang</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; norang]]></copyright><item><title><![CDATA[我的创作纪念日-20240919]]></title><link>https://blog.csdn.net/norang/article/details/142370575</link><guid>https://blog.csdn.net/norang/article/details/142370575</guid><author>norang</author><pubDate>Thu, 19 Sep 2024 21:44:29 +0800</pubDate><description><![CDATA[话说，毕业之后和大学同学去深圳，后面回家考编制，现在在家里的中国邮政的代理金融网点上班。]]></description><category></category></item><item><title><![CDATA[食品制作标准的查询的查询网址]]></title><link>https://blog.csdn.net/norang/article/details/126626394</link><guid>https://blog.csdn.net/norang/article/details/126626394</guid><author>norang</author><pubDate>Wed, 31 Aug 2022 16:28:55 +0800</pubDate><description><![CDATA[国家标准信息查询网址（包含，食品、建筑、衣服、等各个方面）。我主要关注食品的制作标准与规范，但官网里面有些关于食品的相关标准无法查询到，只能查到已经过时的执行标准，应该是信息更新不到位的原因。...]]></description><category></category></item><item><title><![CDATA[中国传统颜色展示网站]]></title><link>https://blog.csdn.net/norang/article/details/126344495</link><guid>https://blog.csdn.net/norang/article/details/126344495</guid><author>norang</author><pubDate>Mon, 15 Aug 2022 12:25:22 +0800</pubDate><description><![CDATA[中国传统颜色展示网站]]></description><category></category></item><item><title><![CDATA[KM查询--好用的 汉语成语 查询 网站]]></title><link>https://blog.csdn.net/norang/article/details/126344375</link><guid>https://blog.csdn.net/norang/article/details/126344375</guid><author>norang</author><pubDate>Mon, 15 Aug 2022 12:11:01 +0800</pubDate><description><![CDATA[汉语成语 意思查询--KM查询]]></description><category></category></item><item><title><![CDATA[LaTeX公式编辑器ver1.6.5 编辑器 -----TeX公式编辑网站]]></title><link>https://blog.csdn.net/norang/article/details/126344280</link><guid>https://blog.csdn.net/norang/article/details/126344280</guid><author>norang</author><pubDate>Mon, 15 Aug 2022 12:02:31 +0800</pubDate><description><![CDATA[Tex公式编辑网站推荐]]></description><category></category></item><item><title><![CDATA[Git 设置本机绑定SSH公钥，实现免密码登录]]></title><link>https://blog.csdn.net/norang/article/details/121920657</link><guid>https://blog.csdn.net/norang/article/details/121920657</guid><author>norang</author><pubDate>Wed, 15 Dec 2021 10:52:51 +0800</pubDate><description><![CDATA[使用Git 输入命令（使用ed25519的加密方式生成秘钥）
ssh-keygen -t ed25519 -C "koma@ouring.com"




参考博客
生成/添加SSH公钥
https://gitee.com/help/articles/4181#article-header0
https://mp.weixin.qq.com/s/Bf7uVhGiu47uOELjmC5uXQ

]]></description><category></category></item><item><title><![CDATA[IDEA中 常用快捷键]]></title><link>https://blog.csdn.net/norang/article/details/121904692</link><guid>https://blog.csdn.net/norang/article/details/121904692</guid><author>norang</author><pubDate>Mon, 13 Dec 2021 14:43:06 +0800</pubDate><description><![CDATA[•万能键：ALT+ENTER
•运行当前文件：CTRL+SHIFT+F10
•运行上次：SHIFT+F10
•以DEBUG模式运行上次：SHIFT+F9
•选择运行：ALT+SHIFT+F10
•选择以DEBUG模式运行：ALT+SHIFT+F9
•搜索全部：双击SHITF
•运行全部：双击CTRL
•搜索：CTRL+F
•替换：CTRL+R
•在文件中查找：CTRL+SHIFT+F
•在文件中搜索并替换：CTRL+SHIFT+R
•重命名：SHIFT+F6
•新增文件：ALT+F=&gt;N=&gt;选择]]></description><category></category></item><item><title><![CDATA[IDEA中 通过配置 实时模板 来快速生成 方法注释]]></title><link>https://blog.csdn.net/norang/article/details/121903739</link><guid>https://blog.csdn.net/norang/article/details/121903739</guid><author>norang</author><pubDate>Mon, 13 Dec 2021 13:56:10 +0800</pubDate><description><![CDATA[模板文本
*
 * $END$
 *
 * @param $methodParameters$
 * @return $methodReturnType$
 * @author &lt;achao1441470436@gmail.com&gt;
 * @since $date$ $time$
 */

然后在方法前输入/**然后按一下TAB键即可生成方法注释
参考博客
https://mp.weixin.qq.com/s/Y8lIfF1EWXtT6ITu3gK7lw

...]]></description><category></category></item><item><title><![CDATA[Java 并发总结 线程的协作机制]]></title><link>https://blog.csdn.net/norang/article/details/121201425</link><guid>https://blog.csdn.net/norang/article/details/121201425</guid><author>norang</author><pubDate>Mon, 08 Nov 2021 10:12:54 +0800</pubDate><description><![CDATA[这里写目录标题20.2 线程的协作机制（1）wait/notify（2）显式条件（3）线程的中断（4）协作工具类（5）阻塞队列（6）Future/FutureTask参考目录
20.2 线程的协作机制
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;多线程之间的核心问题，除了竞争，就是协作。我们在15.3节介绍 了多种协作场景，比如生产者/消费者协作模式、主从协作模式、同时 开始、集合点等。之前章节探讨了协作的多种机制：
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&]]></description><category></category></item><item><title><![CDATA[Java 并发总结 线程安全的机制]]></title><link>https://blog.csdn.net/norang/article/details/121147888</link><guid>https://blog.csdn.net/norang/article/details/121147888</guid><author>norang</author><pubDate>Mon, 08 Nov 2021 09:16:13 +0800</pubDate><description><![CDATA[这里写目录标题20.1 线程安全的机制（1）synchronized（2）显式锁（3）volatile（4）原子变量和CAS（5）写时复制（6）ThreadLocal参考目录
20.1 线程安全的机制
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;线程表示一条单独的执行流，每个线程有自己的执行计数器，有自己的栈，但可以共享内存，共享内存是实现线程协作的基础，但共享内存有两个问题，竞态条件和内存可见性，之前章节探讨了解决这些问题的多种思路：
&nbsp;&nbsp;&nbsp;&nb]]></description><category></category></item><item><title><![CDATA[Java 异步任务执行服务 定时任务的那些陷阱]]></title><link>https://blog.csdn.net/norang/article/details/121142425</link><guid>https://blog.csdn.net/norang/article/details/121142425</guid><author>norang</author><pubDate>Thu, 04 Nov 2021 17:44:48 +0800</pubDate><description><![CDATA[这里写目录标题18.3 定时任务的那些陷阱18.3.1 Timer和TimerTask1.基本用法2.基本示例3.基本原理4.死循环5.异常处理6.小结18.3.2 ScheduledExecutorService1.基本用法2.基本示例3.基本原理18.3.3 小结参考目录
18.3 定时任务的那些陷阱
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;本节探讨定时任务，定时任务的应用场景是非常多的，比如：
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;·闹]]></description><category></category></item><item><title><![CDATA[Java 异步任务执行服务 线程池]]></title><link>https://blog.csdn.net/norang/article/details/121123410</link><guid>https://blog.csdn.net/norang/article/details/121123410</guid><author>norang</author><pubDate>Thu, 04 Nov 2021 14:39:15 +0800</pubDate><description><![CDATA[这里写目录标题18.2 线程池18.2.1 理解线程池1.线程池大小2.队列3.任务拒绝策略4.线程工厂5.关于核心线程的特殊配置18.2.2 工厂类Executors18.2.3 线程池的死锁18.2.4 小结参考目录
18.2 线程池
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;线程池是并发程序中一个非常重要的概念和技术。 线程池，顾名思义，就是一个线程的池子，里面有若干线程，它们的目的就是执行提 交给线程池的任务，执行完一个任务后不会退出，而是继续等待或执行 新任务。线程池]]></description><category></category></item><item><title><![CDATA[Java 异步任务执行服务 基本概念和原理]]></title><link>https://blog.csdn.net/norang/article/details/121120614</link><guid>https://blog.csdn.net/norang/article/details/121120614</guid><author>norang</author><pubDate>Wed, 03 Nov 2021 15:55:24 +0800</pubDate><description><![CDATA[这里写目录标题18.1 基本概念和原理18.1.1 基本接口18.1.2 基本用法18.1.3 基本实现原理1.AbstractExecutorService2.FutureTask18.1.4 小结参考目录
18.1 基本概念和原理
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;下面，我们来看异步任务执行服务的基本接口、用法和实现原理。
18.1.1 基本接口
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;首先，我们来看任务执行服务涉及的基本接口：
&n]]></description><category></category></item><item><title><![CDATA[Java 同步和协作工具类 循环栅栏CyclicBarrier]]></title><link>https://blog.csdn.net/norang/article/details/121095123</link><guid>https://blog.csdn.net/norang/article/details/121095123</guid><author>norang</author><pubDate>Tue, 02 Nov 2021 10:51:11 +0800</pubDate><description><![CDATA[这里写目录标题19.4 循环栅栏CyclicBarrier参考目录
19.4 循环栅栏CyclicBarrier
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我们在15.3.7节使用wait/notify实现了一个简单的集合点 AssemblePoint，我们提到，Java并发包中已经提供了类似工具，就是 CyclicBarrier。它相当于是一个栅栏，所有线程在到达该栅栏后都需要等待其他线程，等所有线程都到达后再一起通过，它是循环的，可以用作重复的同步。
&nbsp;&nbsp]]></description><category></category></item><item><title><![CDATA[Java 同步和协作工具类 倒计时门栓CountDownLatch]]></title><link>https://blog.csdn.net/norang/article/details/121094426</link><guid>https://blog.csdn.net/norang/article/details/121094426</guid><author>norang</author><pubDate>Tue, 02 Nov 2021 10:09:24 +0800</pubDate><description><![CDATA[这里写目录标题19.3 倒计时门栓CountDownLatch参考目录
19.3 倒计时门栓CountDownLatch
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;我们在15.3.5节使用wait/notify实现了一个简单的门栓MyLatch，我 们提到，Java并发包中已经提供了类似工具，就是CountDownLatch。它相当于是一个门栓，一开始是关闭的，所有希望通过该门的线程都需要等待，然后开始倒计时，倒计时变为0后，门栓打开，等待的所有线程 都可以通过，它是一次性的，]]></description><category></category></item><item><title><![CDATA[Java 同步和协作工具类 信号量Semaphore]]></title><link>https://blog.csdn.net/norang/article/details/121093544</link><guid>https://blog.csdn.net/norang/article/details/121093544</guid><author>norang</author><pubDate>Tue, 02 Nov 2021 09:49:51 +0800</pubDate><description><![CDATA[这里写目录标题19.2 信号量Semaphore参考目录
19.2 信号量Semaphore
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;之前介绍的锁都是限制只有一个线程可以同时访问一个资源。现实中，资源往往有多个，但每个同时只能被一个线程访问，比如，饭店的饭桌、火车上的卫生间。有的单个资源即使可以被并发访问，但并发访问数多了可能影响性能，所以希望限制并发访问的线程数。还有的情况，与软件的授权和计费有关，对不同等级的账户，限制不同的最大并发访问数。
&nbsp;&nbsp;&nb]]></description><category></category></item><item><title><![CDATA[Java 同步和协作工具类 读写锁ReentrantReadWriteLock]]></title><link>https://blog.csdn.net/norang/article/details/121084148</link><guid>https://blog.csdn.net/norang/article/details/121084148</guid><author>norang</author><pubDate>Mon, 01 Nov 2021 17:49:59 +0800</pubDate><description><![CDATA[这里写目录标题19.1 读写锁ReentrantReadWriteLock参考目录
19.1 读写锁ReentrantReadWriteLock
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;之前章节我们介绍了两种锁：synchronized和显式锁 ReentrantLock，对于同一受保护对象的访问，无论是读还是写，它们都 要求获得相同的锁。在一些场景中，这是没有必要的，多个线程的读操作完全可以并行，在读多写少的场景中，让读操作并行可以明显提高性能。
&nbsp;&nbsp;&]]></description><category></category></item><item><title><![CDATA[Java 并发包的基石 显式条件]]></title><link>https://blog.csdn.net/norang/article/details/121081766</link><guid>https://blog.csdn.net/norang/article/details/121081766</guid><author>norang</author><pubDate>Mon, 01 Nov 2021 17:02:49 +0800</pubDate><description><![CDATA[这里写目录标题16.3 显式条件16.3.1 用法16.3.2 生产者/消费者模式16.3.3 实现原理16.3.4 小结参考目录
16.3 显式条件
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;16.2节我们介绍了显式锁，本节介绍关联的显式条件，介绍其用法和原理。显式条件在不同上下文中也可以被称为条件变量、条件队列、 或条件，后文我们可能会交替使用。
16.3.1 用法
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;锁用于解决竞态条件问题，条件是线程间]]></description><category></category></item><item><title><![CDATA[Java 并发包的基石 显式锁]]></title><link>https://blog.csdn.net/norang/article/details/121066044</link><guid>https://blog.csdn.net/norang/article/details/121066044</guid><author>norang</author><pubDate>Mon, 01 Nov 2021 14:58:31 +0800</pubDate><description><![CDATA[16.2 显式锁
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;15.2节介绍了利用synchronized实现锁，我们提到了synchronized的 一些局限性，本节探讨Java并发包中的显式锁，它可以解决synchronized 的限制。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Java并发包中的显式锁接口和类位于包java.util.concurrent.locks下， 主要接口和类有：
&nbsp;&nbsp;&nbsp;&nbsp;&nb]]></description><category></category></item><item><title><![CDATA[Lock 三线程 轮流执行]]></title><link>https://blog.csdn.net/norang/article/details/121058053</link><guid>https://blog.csdn.net/norang/article/details/121058053</guid><author>norang</author><pubDate>Sat, 30 Oct 2021 23:19:48 +0800</pubDate><description><![CDATA[这里写目录标题Lock 版本，四线程， 生产者消费者，使用 while 判断运行结果三线程 轮流执行执行结果参考目录
Lock 版本，四线程， 生产者消费者，使用 while 判断
public class 虚假唤醒 {

    public static void main(String[] args) {
        Data data=new Data();
        new Thread(()-&gt;{
            for (int i=0;i&lt;10;i++)
   ]]></description><category></category></item></channel></rss>