摘要: ​“ 从现实世界的角度看计算机,可以帮助我们更清晰的学习计算机领域的知识。 本文试图用生活中常见的事物来解释计算机技术领域,让知识更通俗易懂 ” 这篇文章的阅读对象是计算机专业在读及刚进入工作一年左右的的同学,文章措辞也许不太严谨,主要目的是为了让大家更容易理解。 01 便利店背后的“系统” “系统 阅读全文
posted @ 2020-09-14 12:03 UnicornLien 阅读(145) 评论(0) 推荐(1) 编辑
摘要: # 基本使用 JDK的lang包下提供了ThreadLocal类,我们可以使用它创建一个线程变量,线程变量的作用域仅在于此线程内。<br />用2个示例来展示一下ThreadLocal的用法。 **示例一:**```javaThreadLocal<Integer> threadLocal = new 阅读全文
posted @ 2022-11-04 22:10 UnicornLien 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 当一个线程在执行过程中抛出了异常,并且没有进行try..catch,那么这个线程就会终止运行。在Thread类中,提供了两个可以设置线程未捕获异常的全局处理器,我们可以在处理器里做一些工作,例如将异常信息发送到远程服务器。虽然这可以捕获到线程中的异常,但是并不能阻止线程停止运行。因此该在线程run方 阅读全文
posted @ 2022-11-04 14:41 UnicornLien 阅读(540) 评论(0) 推荐(2) 编辑
摘要: Java的每个线程都具有自己的状态,Thread类中成员变量threadStatus存储了线程的状态: private volatile int threadStatus = 0; 在Thread类中也定义了状态的枚举,共六种,如下: public enum State { NEW, // 新建状态 阅读全文
posted @ 2022-11-04 13:05 UnicornLien 阅读(143) 评论(0) 推荐(0) 编辑
摘要: Java中,通过Thread类,我们可以创建2种线程,分为守护线程和用户线程。 守护线程是所有非守护线程的保姆,当所有非守护线程执行完成或退出了,即使还有守护线程在运行,JVM也会直接退出,因此守护线程通常是用来处理一些辅助工作。 反之,对于非守护线程,只要有一个在运行,JVM就不会退出。 典型的守 阅读全文
posted @ 2022-11-04 11:36 UnicornLien 阅读(3879) 评论(0) 推荐(0) 编辑
摘要: 在创建型设计模式中,我们第一个学习的是单例模式(Singleton Pattern),这是设计模式中最简单的模式之一。 单例是什么意思呢? 单例就是单实例的意思,即在系统全局,一个类只创建一个对象,并且在系统全局都可以访问这个对象而不用重新创建。 一、单例模式的基本写法 单例模式示例代码: publ 阅读全文
posted @ 2022-11-03 16:31 UnicornLien 阅读(6323) 评论(1) 推荐(1) 编辑
摘要: 在很多应用系统中都要使用到中国的区划数据,关于区划代码有一个编码规则,它也是我们身份证号码的前缀,下面来聊聊。 先上图: 统计上使用的12位行政区划代码由两部分组成,前六位为第一部分,表示县级以上(包括县级)行政区划代码;后六位为第二部分,表示县级以下行政区划代码。第一部分的六位代码统一使用《中华人 阅读全文
posted @ 2022-11-03 15:59 UnicornLien 阅读(1151) 评论(0) 推荐(0) 编辑
摘要: JUC包(java.util.concurrent)中提供了对定时任务的支持,即ScheduledExecutorService接口。 本文对ScheduledExecutorService的介绍,将基于Timer类使用介绍进行,因此请先阅读Timer类使用介绍文章。 此处为语雀内容卡片,点击链接查 阅读全文
posted @ 2022-11-01 21:09 UnicornLien 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 目前springboot应用广泛,因此对于spring-task直接基于springboot框架介绍,不涉及xml配置。 本文直接介绍spring-task的使用方法,涉及的相关基础知识不再赘述,请先阅读Timer和ScheduledExecutorService的相关文章。 此处为语雀内容卡片,点 阅读全文
posted @ 2022-11-01 21:09 UnicornLien 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 通过源码分析,我们可以更深入的了解其底层原理。 对于JDK自带的定时器,主要涉及TimerTask类、Timer类、TimerQueue类、TimerThread类,其中TimerQueue和TimerThread类与Timer类位于同一个类文件,由Timer内部调用。 先画上一张图,描述一下Tim 阅读全文
posted @ 2022-11-01 21:08 UnicornLien 阅读(83) 评论(0) 推荐(0) 编辑
摘要: java.util包下提供了对定时任务的支持,涉及2个类: Timer:定时器类 TimerTask:任务抽象类 使用该定时任务我们需要继承TimerTask抽象类,覆盖run方法编写任务执行代码,并利用Timer定时器对TimerTask进行调度。 编写一个任务: TimerTask task = 阅读全文
posted @ 2022-11-01 17:39 UnicornLien 阅读(1670) 评论(0) 推荐(0) 编辑