基于线程的多任务处理环境 进程P1 操作系统 进程P2 1进程P3: 线程T1 局部变量 1|Java虚拟机 仁线程12}-局部变量 C全局内存 线程T3 局部变量 线程是轻量级实体,由寄存器、堆栈和某些数据组成。进程 结构的其余部分由所有的线程所共享:如地址空间、文件描 述符等 它们共享相同的地址空间并且共同分享同一个进 程。线程间通信是便宜的,线程间的转换也是低成本的 2021/2/20 java面向对象程序设计教程
2021/2/20 Java面向对象程序设计教程 6 基于线程的多任务处理环境 ◼ 线程是轻量级实体,由寄存器、堆栈和某些数据组成。进程 结构的其余部分由所有的线程所共享:如地址空间、文件描 述符等——它们共享相同的地址空间并且共同分享同一个进 程。线程间通信是便宜的,线程间的转换也是低成本的
线程并发 T1 T2 CPU T3 并发性( Concurrency)是两个或多个线程(或传统的进 程)可以同时在执行代码之中;可以是相同的代码,也可 以是不同的代码。这些线程可以一次执行,也可以多次执 ,即一个已开始执行但被中断,而另外一个已开始了 但在给定的时间点上,只有一个在CPU在处理一个线程。 2021/2/20 java面向对象程序设计教程
2021/2/20 Java面向对象程序设计教程 7 线程并发 ◼ 并发性(Concurrency)是两个或多个线程(或传统的进 程)可以同时在执行代码之中;可以是相同的代码,也可 以是不同的代码。这些线程可以一次执行,也可以多次执 行,即一个已开始执行但被中断,而另外一个已开始了。 ◼ 但在给定的时间点上,只有一个在CPU在处理一个线程
线程并行 } CPU CPU T3 并行性( Parallelism)是针对多处理器环境而言的, 是指两个或多个线程真正同时运行在不同的CPU上。 在多处理器机上,很多不同的线程可以并行运行,或者 说是同时运行 2021/2/20 java面向对象程序设计教程
2021/2/20 Java面向对象程序设计教程 8 线程并行 ◼ 并行性(Parallelism)是针对多处理器环境而言的, 是指两个或多个线程真正同时运行在不同的CPU上。 ◼ 在多处理器机上,很多不同的线程可以并行运行,或者 说是同时运行
异步与同步 异步世界需要处理同步业务 有3个人在3个收银台前结帐 3个人结帐是异步的 每个人信用卡在银行业务处理时需保证同步 2021/2/20 ava面向对象程序设计教程
2021/2/20 Java面向对象程序设计教程 9 异步与同步 ◼ 异步世界需要处理同步业务 ◼ 有3个人在3个收银台前结帐 • 3个人结帐是异步的 • 每个人信用卡在银行业务处理时需保证同步
线程的POSⅨ标准 传统 进程 Proc 1 Proc 2 Proc 3 Proc 4 Proc 5 用户 LWP 内核 线程 内核 硬件 处理器 2021/2/20 java面向对象程序设计教程
2021/2/20 Java面向对象程序设计教程 10 线程的POSIX标准