摘要: 在Java中,停止一个线程的主要机制是中断,中断并不是强迫终止一个线程,它是一种协作机制,是给线程传递一个取消信号,但是由线程来决定如何以及何时退出。 Thread类定义了如下方法: interrupt()对线程的影响与线程的状态和在进行的IO操作有关,我们先考虑线程的状态: RUNNABLE:线程 阅读全文
posted @ 2018-08-05 17:43 沉默哥 阅读(3568) 评论(0) 推荐(2) 编辑
摘要: 协作基础(wait/notify) Java的根父类是Object,Java在Object类而非Thread类中,定义了一些线程协作的基本方法,使得每个对象都可以调用这些方法,这些方法有两类,一类是wait,另一类是notify。 wait方法主要有两个: 一个带时间参数,单位是毫秒,表示最多等待这 阅读全文
posted @ 2018-08-05 17:05 沉默哥 阅读(248) 评论(0) 推荐(0) 编辑
摘要: synchronized基础用法 synchronized可以用于修饰类的实例方法、静态方法和代码块。它保护的是对象(包括类对象)而非代码,只要访问的是同一个对象的synchronized方法,即使是不同的代码,也会被同步顺序访问。 每个对象有一个锁(又叫监视器)和一个锁等待队列,锁只能被一个线程持 阅读全文
posted @ 2018-08-05 15:51 沉默哥 阅读(1583) 评论(0) 推荐(0) 编辑
摘要: 线程基础 线程表示一条单独的执行流,它有自己的程序执行计数器,有自己的栈 java中线程的实现方式: 继承Thread类并重写其run方法(Thread类也实现了Runnable接口,并提供了默认实现),调用Thread类的实例方法start()启动线程 实现Runnable接口(重写run()方法 阅读全文
posted @ 2018-08-05 14:46 沉默哥 阅读(207) 评论(0) 推荐(0) 编辑