没有合适的资源?快使用搜索试试~ 我知道了~
java多线程详细讲解,关于java开发中用到的线程知识!快捷入手!
资源推荐
资源详情
资源评论
http://hi.baidu.com/xiaolincc26/home ——疯狂大白菜
1
JAVA
JAVAJAVA
JAVA 多线程
多线程多线程
多线程编程集合
编程集合编程集合
编程集合
作者
作者作者
作者:
::
:熔岩
熔岩熔岩
熔岩
原文出处:http://lavasoft.blog.51cto.com/62575/27069
收集制作
收集制作收集制作
收集制作:
::
:CrazyCabbage
CrazyCabbageCrazyCabbage
CrazyCabbage
目录
目录目录
目录
Java 线程:概念与原理 ................................................................................................................... 2
Java 线程:创建与启动 ................................................................................................................... 3
Java 线程:线程栈模型与线程的变量 ........................................................................................... 9
Java 线程:线程状态的转换 ......................................................................................................... 10
Java 线程:线程的同步与锁 ......................................................................................................... 20
Java 线程:线程的交互 ................................................................................................................. 32
Java 线程:线程的调度-休眠 ........................................................................................................ 36
Java 线程:线程的调度-优先级 .................................................................................................... 38
Java 线程:线程的调度-让步 ........................................................................................................ 40
Java 线程:线程的调度-合并 ........................................................................................................ 41
Java 线程:线程的调度-守护线程 ................................................................................................ 43
Java 线程:线程的同步-同步方法 ................................................................................................ 45
Java 线程:线程的同步-同步块 .................................................................................................... 49
Java 线程:并发协作-生产者消费者模型 .................................................................................... 51
Java 线程:并发协作-死锁............................................................................................................ 56
Java 线程:volatile 关键字 ............................................................................................................ 58
Java 线程:新特征-线程池 ............................................................................................................ 59
ThreadPoolExecutor ........................................................................................................ 64
Java 线程:新特征-有返回值的线程 ............................................................................................ 65
Java 线程:新特征-锁(上) ........................................................................................................ 66
Java 线程:新特征-锁(下) ........................................................................................................ 70
Java 线程:新特征-信号量............................................................................................................ 73
Java 线程:新特征-阻塞队列 ........................................................................................................ 76
Java 线程:新特征-阻塞栈............................................................................................................ 77
Java 线程:新特征-条件变量 ........................................................................................................ 79
Java 线程:新特征-原子量............................................................................................................ 89
Java 线程:新特征-障碍器............................................................................................................ 93
Crazy Cabbage
http://hi.baidu.com/xiaolincc26/home ——疯狂大白菜
2
Java 线程:大总结 ......................................................................................................................... 95
Java 线程
线程线程
线程:
::
:概念与原理
概念与原理概念与原理
概念与原理
一
一一
一、
、、
、操作系统中线程
操作系统中线程操作系统中线程
操作系统中线程和进程的概念
和进程的概念和进程的概念
和进程的概念
现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。
进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一
个进程中可以启动多个线程。比如在 Windows 系统中,一个运行的 exe 就是一个进
程。
线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如 java.exe
进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的
内存。
“同时”执行是人的感觉,在线程之间实际上轮换执行。
二
二二
二、
、、
、Java
JavaJava
Java 中的线程
中的线程中的线程
中的线程
在 Java 中,“线程”指两件不同的事情:
1、java.lang.Thread 类的一个实例;
2、线程的执行。
使用 java.lang.Thread 类或者 java.lang.Runnable 接口编写代码来定义、实例化
和启动新线程。
一个 Thread 类实例只是一个对象,像 Java 中的任何其他对象一样,具有变量和方
法,生死于堆上。
Crazy Cabbage
http://hi.baidu.com/xiaolincc26/home ——疯狂大白菜
3
Java 中,每个线程都有一个调用栈,即使不在程序中创建任何新的线程,线程也在
后台运行着。
一个 Java 应用总是从 main()方法开始运行,mian()方法运行在一个线程内,它被
称为主线程。
一旦创建一个新的线程,就产生一个新的调用栈。
线程总体分两类:用户线程和守候线程。
当所有用户线程执行完毕的时候,JVM 自动关闭。但是守候线程却不独立于 JVM,守
候线程一般是由操作系统或者用户自己创建的。
Java 线程
线程线程
线程:
::
:创建与启动
创建与启动创建与启动
创建与启动
一
一一
一、
、、
、定义线程
定义线程定义线程
定义线程
1、扩展 java.lang.Thread 类。
此类中有个 run()方法,应该注意其用法:
public void run()
如果该线程是使用独立的
Runnable
运行对象构造的,则调用该
Runnable
对象的
run
方法;否则,该方法不执行任何操作并返回。
Thread
的子类应该重写该方法。
Crazy Cabbage
http://hi.baidu.com/xiaolincc26/home ——疯狂大白菜
4
2、实现 java.lang.Runnable 接口。
void run
runrun
run()
使用实现接口
Runnable
的对象创建一个线程时,启动该线程将导致在独
立执行的线程中调用对象的
run
方法。
方法
run
的常规协定是,它可能执行任何所需的操作。
二
二二
二、
、、
、实例化线程
实例化线程实例化线程
实例化线程
1、如果是扩展 java.lang.Thread 类的线程,则直接 new 即可。
2、如果是实现了 java.lang.Runnable 接口的类,则用 Thread 的构造方法:
Thread(Runnable target)
Thread(Runnable target, String name)
Thread(ThreadGroup group, Runnable target)
Thread(ThreadGroup group, Runnable target, String name)
Thread(ThreadGroup group, Runnable target, String name, long stackSize)
三
三三
三、
、、
、启动线程
启动线程启动线程
启动线程
在线程的 Thread 对象上调用 start()方法,而不是 run()或者别的方法。
Crazy Cabbage
http://hi.baidu.com/xiaolincc26/home ——疯狂大白菜
5
在调用 start()方法之前:线程处于新状态中,新状态指有一个 Thread 对象,但还
没有一个真正的线程。
在调用 start()方法之后:发生了一系列复杂的事情
启动新的执行线程(具有新的调用栈);
该线程从新状态转移到可运行状态;
当该线程获得机会执行时,其目标 run()方法将运行。
注意:对 Java 来说,run()方法没有任何特别之处。像 main()方法一样,它只是新
线程知道调用的方法名称(和签名)。因此,在 Runnable 上或者 Thread 上调用 run
方法是合法的。但并不启动新的线程。
四
四四
四、
、、
、例子
例子例子
例子
1、实现 Runnable 接口的多线程例子
/**
* 实现 Runnable 接口的类
*
* @author leizhimin 2008-9-13 18:12:10
*/
public class DoSomething implements Runnable {
private String name;
public DoSomething(String name) {
this.name = name;
}
Crazy Cabbage
剩余94页未读,继续阅读
资源评论
lzqzzu6
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功