zoukankan      html  css  js  c++  java
  • 多线程理论知识

    什么是多线程:  

        * 线程是程序执行的一条路径, 一个进程中可以包含多条线程
        * 多线程并发执行可以提高程序的效率, 可以同时完成多项工作

    多线程的应用场景
        * 红蜘蛛同时共享屏幕给多个电脑
        * 迅雷开启多条线程一起下载
        * QQ同时和多个人一起视频
        * 服务器同时处理多个客户端请求

    并行和并发的区别  

        * 并行就是两个任务同时运行,就是甲任务进行的同时,乙任务也在进行。(需要多核CPU)
        * 并发是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间间隔较短,使人感觉两个任务都在运行。


          * 比如我跟两个网友聊天,左手操作一个电脑跟甲聊,同时右手用另一台电脑跟乙聊天,这就叫并行。
          * 如果用一台电脑我先给甲发个消息,然后立刻再给乙发消息,然后再跟甲聊,再跟乙聊。这就叫并发。

     多线程原来是并发,底层还是CPU轮流切换任务

    Java程序运行原理:

        启动Java虚拟机,启动JVM,等于启动了一个应用程序,也就是启动了一个进程  ,这时会自动启动一个“主线程”,然后主线程去调某个类的main方法

    Java启动是多线程的,至少需要启动  主线程 和  垃圾回收线程

        Object类的finalize()方法就是垃圾回收器。通过System.gc()  也可以调用垃圾回收器

        匿名对象就会在内存中产生垃圾

    竹杖芒鞋轻胜马,一蓑烟雨任平生。 回首向来萧瑟处,也无风雨也无晴。
  • 相关阅读:
    【HDOJ】4412 Sky Soldiers
    【HDOJ】4579 Random Walk
    【HDOJ】4418 Time travel
    【HDOJ】4326 Game
    【HDOJ】4089 Activation
    【HDOJ】4043 FXTZ II
    【HDOJ】4652 Dice
    【HDOJ】3007 Buried memory
    mfc调用WPFDLL
    遍历系统中所有的进程,可根据名字或ID查找某一个线程
  • 原文地址:https://www.cnblogs.com/yaobiluo/p/11324483.html
Copyright © 2011-2022 走看看