zoukankan      html  css  js  c++  java
  • Java多线程1:进程和线程的区别

    之前看了2天的多线程,就不看了。现在继续拾起来吧。最近有点松散,多线程内容都是看毕向东的视频以及网络教程和各种书籍

    什么是进程?

    • 通俗一点讲,就是正在进行的程序,进程是操作系统控制的基本运行单元;

    image

    如上图所示,谷歌浏览器正在运行着,它就是一个进行中的程序,也就是进程。

    什么是线程?

    • 进程中独立运行的子任务就是一个线程。像QQ.exe运行的时候就有很多子任务在运行,比如聊天线程、下载文件线程等。

    为什么要用多线程?

    image

    如图所示:

    • 单任务:

      • 任务1执行10秒,10秒之后,再可以执行任务2.
      • 任务2必须等待任务1执行完成后,才可以执行,系统运行效率大大降低
      • 单任务的特点就是排队执行,也就是同步执行
    • 多任务:

      • cpu就可以在任务1 和任务2 之间来回切换,任务2 就不必等待10秒之后执行
      • 系统运行效率大大提高
      • 使用多线程也就是使用异步

    注意

    • 多线程是异步的,所以千万不要把Eclipse里代码的顺序当成线程执行顺序,线程被调用的时机是随机的
  • 相关阅读:
    持续集成环境搭建(一)
    The POSIX API/nss/nscd
    [postfix]转发邮件设置
    [python]python安装包错误
    栈及栈帧讲解
    kernel-init-bash
    nginx no input file specified
    Lumen/Laravel调试API接口利器laravel-debugbar
    homestead实现外部局域网络其他主机的访问
    PHP rabbitmq扩展安装
  • 原文地址:https://www.cnblogs.com/zhenghengbin/p/9532844.html
Copyright © 2011-2022 走看看