JAVA高级基础(62)---多线程的介绍

版权声明:如需转载请标明出处 https://blog.csdn.net/yj201711/article/details/85012216

多线程

进程:运行中的一个程序,在计算机中的一个运行路径。一个程序只能有一个进程

线程:是进程的一个组成单元。在一个进程中至少有一个或一个以上的线程存在

Java是最先支持多线程开发的语言之一,Java从一开始就支持了多线程能力,因此Java开发者能常遇到上面描述的问题场景。

进程和线程的区别

  1. 是否占有资源问题
  2. 一个进程的创建/撤销所需要的开销远远大于一个线程所需要的开销
  3. 进程为重量级组件,线程为轻量级组件

线程的主要特点

  • 不能以一个文件名的方式独立存在磁盘中
  • 不能单独执行,只有在进程启动才可启动
  • 线程可以共享进程相同的内存(代码与数据)

线程的主要用途

  1. 利用它可以完成重复性的工作(如实现动画、声音等的播放)
  2. 从事一次性较费时的初始化工作(如网络连接、声音数据文件的加载)
  3. 并发执行的运行效果(一个进程多个线程)以实现更复杂的功能

多线程程序的主要有点

  1. 可以减轻系统性能方面的瓶颈,因为可以并行操作
  2. 提高CPU的处理器的效率。在多线程中,通过优先级管理,可以使重要的程序优先操作,提高了任务管理的灵活性;另一方面,在多CPU系统中,可以把不同的线程在不同inbgdCPU中执行,真正做到同时处理多任务。多线程不是提高执行速度,而是提高CPU利用率

多线程的代价

多线程的作用

  1. 多线程不是为了提高执行速度,而是提高应用程序的使用率
  2. 线程和线程共享“堆内存和方法去内存”,栈内存是独立的,一个线程一个栈
  3. 提升用户体验

猜你喜欢

转载自blog.csdn.net/yj201711/article/details/85012216