首页 > 编程语言 > 详细

多线程

时间:2020-02-14 19:31:20      阅读:43      评论:0      收藏:0      [点我收藏+]

多线程介绍

 

 

进程:进程指正在运行的程序。确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于运行过程中的程序,并且具有一定独立功能。

 

线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。

 

简而言之:一个程序运行后至少有一个进程,一个进程中可以包含多个线程

 

进程是小的 进程是大的 一个进程里至少有一个线程 可以有多个线程

 

我们之前学习的都是单线程 程序 

技术分享图片

 

 

多线程和cpu

 

技术分享图片

 

 

如果是单核多线程的话 就是cpu来回切换 因为切换速度太快 感觉不出来是没有不是在同时进行,如果多核的话 就好很多 每个cpu都可以分时间执行

 

多线程的好处

 

技术分享图片

 

 

 

 

 

 

 

多线程提高工作效率。

单线程程序:即,若有多个任务只能依次执行。当上一个任务执行结束后,下一个任务开始执行。如,去网吧上网,网吧只能让一个人上网,当这个人下机后,下一个人才能上网。

多线程程序:即,若有多个任务可以同时执行。如,去网吧上网,网吧能够让多个人同时上网

 

 

 

技术分享图片

 

 

1.1 程序运行原理

分时调度

所有线程轮流使用 CPU 的使用权,平均分配每个线程占用 CPU 的时间。

抢占式调度

优先让优先级高的线程使用 CPU,如果线程的优先级相同,那么会随机选择一个(线程随机性)Java使用的为抢占式调度。

我们无法控制cpu

实际上,CPU(中央处理器)使用抢占式调度模式在多个线程间进行着高速的切换。对于CPU的一个核而言,某个时刻,只能执行一个线程,

CPU的在多个线程间切换速度相对我们的感觉要快,看上去就是在同一时刻运行。

主线程

技术分享图片

 

 

Thread

 

 

 

创建线程方式一继承Thread

 

 

创建线程的步骤:

 

1 定义一个类继承Thread。

 

2 重写run方法。

 

3 创建子类对象,就是创建线程对象。

 

4 调用start方法,开启线程并让线程执行,同时还会告诉jvm去调用run方法。

 

技术分享图片

 

 技术分享图片

 

多线程

原文:https://www.cnblogs.com/www1842564021/p/12308563.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!