栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 多线程 进程和线程区别和联系——0

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 多线程 进程和线程区别和联系——0

进程是受操作系统管理的基本运行单元 通过查看 “Windows 任务管理器 ”窗口中的列 表,完全可以将运行在内存中的 exe文件理解成进 程

程序 是指令序列,这些指令可以让 CPU完成 指定的任务。 *.java 程序经编译后形成 *.class文 件,在 Windows 中启动一个 JVM虚拟机相当于创建 了一个进程,在虚拟机中加载 class文件并运行, 在 class文件中通过执行创建新线程的代码来执行 具体的任务
package test;

public class Test1 {
    public static void main(String[] args) {
        try {
            Thread.sleep(Integer.MAX_VALUE);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}
Test1 类重复运行 3 次后的进程列表如图 所 示。可以看到,在任务管理器中创建了 3个 javaw.exe 进程,说明每执行一次 main()方法就创建 一个进程,其本质上就是 JVM 虚拟机进程

线程  线程可以理解为在进程中 独立运行的子任务,例如,QQ.exe运行时,很多 的子任务也在同时运,如好友视频线程、下载 文件线程、传输数据线程、发送表情线程等,这 些不同的任务或者说功能都可以同时运行,其中 每一项任务完全可以理解成是 “ 线程”在工作,传 文件、听音乐、发送图片表情等这些功能都有对 应的线程在后台默默地运行。 进程和线程关系 进程负责向操作系统申请资源。在一个进程 中,多个线程可以共享进程中相同的内存或文件 资源 多线程优点 多个线程按照cup时间片并行运算,不会出现不互相依赖的线程相互等待和阻塞的情况 使用多线程技术的场景 1)阻塞。一旦系统中出现了阻塞现象,则可 以根据实际情况来使用多线程技术提高运行效 率。 2 )依赖。业务分为两个执行过程,分别是A 和 B 。当 A 业务发生阻塞情况时, B 业务的执行不 依赖 A业务的执行结果,这时可以使用多线程技术 来提高运行效率;如果 B 业务的执行依赖A业务的 执行结果,则可以不使用多线程技术,按顺序进 行业务的执行。 注意

1、在实际的开发应用中,不要为了使用多线程 而使用多线程,要根据实际场景决定。

2、 多线程是异步的,所以千万不要把代 码的顺序当作线程执行的顺序,线程被调用的时机是随机的
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/946320.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号