摘要:
一、操作系统中的线程状态转换 首先我们来看看操作系统中的线程状态转换。在现在的操作系统中,线程是被视为轻量级进程的,所以操作系统线程的状态其实和操作系统进程的状态是一致的。 操作系统线程主要有以下三个状态: 就绪状态(ready):线程正在等待使用CPU,经调度程序调用之后可进入running状态。 阅读全文
摘要:
一、线程组(ThreadGroup) Java中用ThreadGroup来表示线程组,我们可以使用线程组对线程进行批量控制。 ThreadGroup和Thread的关系就如同他们的字面意思一样简单粗暴,每个Thread必然存在于一个ThreadGroup中,Thread不能独立于ThreadGrou 阅读全文
摘要:
一、Thread类和Runnable接口 首先,我们需要有一个“线程”类。JDK提供了Thread类和Runnable接口来让我们实现自己的“线程”类。 继承Thread类,并重写run方法; 实现Runnable接口的run方法; 1.1、继承Thread类 首先是继承Thread类 public 阅读全文
摘要:
进程和线程的区别? 进程:是指运行中的应用程序,CPU进行分配资源的基本单位。 线程:是指进程中的一个执行流程,有时也成为执行场景。资源调度的基本单位,CPU执行的基本单位。 进程是一个个独立的运行环境,线程是在进程中执行的一个任务。他们两个本质区别是是否单独占有内存地址空间及其它系统资源。 一、进 阅读全文
摘要:
一、背景 我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该只扣一次钱; 发送消息,也应该只发一次,同样的短 阅读全文