zoukankan      html  css  js  c++  java
  • 【多线程概述】

    进程:

      正在运行的程序,是系统进行资源分配和调用的独立单位

      每一个进程都有它自己的内存空间和系统资源
    线程:

      进程中的单个顺序控制流,是一条执行路径,是程序使用CPU的最基本单位

      一个进程如果只有一条执行路径,则称为单线程程序

      一个进程如果有多条执行路径,则称为多线程程序

    多线程有什么意义?

      多线程的存在,不是提高程序的执行速度,是为了提高应用程序的使用率。程序的执行其实都是在抢CPU的资源,CPU的执行权。

      多个进程是在抢这个资源,而其中的某一个进程如果执行路径比较多,就会有更高的机率抢到CPU的执行权

      我们不敢保证哪一个线程能够在哪个时刻抢到,所以线程的执行有随即性

    并行和并发:

      前者是逻辑上同时发生,指在某一个时间内同时运行多个程序

      后者是物理上同时发生,指在某一个时间点同时运行多个程序

    JAVA程序运行原理:

      Java 命令会启动 java 虚拟机,启动 JVM,等于启动了一个应用程序,也就是启动了一 个进程。

      该进程会自动启动一个 “主线程” ,然后主线程去调用某个类的 main 方法。

      所以 main 方法运行在主线程中。在此之前的所有程序都是单线程的。

    run()和start()的区别:

      run():仅仅是封装被线程执行的代码,直接调用时相当于普通方法

      start():首先启动了线程,然后再由JVM 去调用该线程的run()

    终身学习者
  • 相关阅读:
    如何写一个使用Web Service的IOS应用
    iPad定制相机界面
    IOS Quartz 2D 学习(1)
    cocoa Shallow Copy与Deep Copy
    sqlite3_prepare_v2返回1
    IOS 监听相机对焦事件
    UIImageView添加响应事件无响应
    二、Mongodb常用命令
    三、Mongodb Java中的使用
    多测师肖老师__第二个月python安装和pycharm安装
  • 原文地址:https://www.cnblogs.com/zuixinxian/p/9542168.html
Copyright © 2011-2022 走看看