Java多线程教程
但是,一般使用多线程而不是多进程,这是因为线程使用共享内存区域。它们不分配单独的内存区域以节省内存,并且线程之间的上下文切换比进程花费的时间更少。
Java多线程主要用于游戏,动画等。
1. Java多线程的优点
(1)它不会阻塞用户,因为线程是独立的,可以同时执行多个操作。
(2)可以一起执行许多操作,因此可以节省时间。
(3)线程是独立的,因此如果在单个线程中发生异常,它不会影响其他线程。
2. 多任务处理
多任务处理是同时执行多个任务的过程。使用多任务来利用CPU,多任务处理可以通过两种方式实现:
基于进程的多任务处理(多进程)
基于线程的多任务处理(多线程)
2.1. 基于进程的多任务处理(多进程)
每个进程在内存中都有一个地址。 换句话说,每个进程分配一个单独的内存区域。
进程是重量级的。
进程之间的通信成本很高。
从一个进程切换到另一个进程需要一些时间来保存和加载寄存器,内存映射,更新列表等。
2.2. 基于线程的多任务处理(多线程)
线程共享相同的地址空间。
线程是轻量级的。
线程之间的通信成本很低。
注意:一次只执行一个线程。
Java Thread类
Java提供了Thread
类来实现线程编程。 Thread
类提供了在线程上创建和执行操作的构造函数和方法。 Thread
类扩展了Object
类并实现了Runnable
接口。
java中的线程是什么
线程是一个轻量级的子进程,是最小的处理单元。它是一个单独的执行路径。
线程是独立的。 如果在一个线程中发生异常,则不会影响其他线程。 它使用共享内存区域。
如上图所示,线程在进程内执行。线程之间存在上下文切换。 操作系统中可以有多个进程,一个进程可以有多个线程。
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王