国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中進(jìn)程和線程的區(qū)別詳解

2020-02-16 10:31:47
字體:
供稿:網(wǎng)友

Num01–>線程

線程是操作系統(tǒng)中能夠進(jìn)行運(yùn)算調(diào)度的最小單位。它被包含在進(jìn)程之中,是進(jìn)程中的實(shí)際運(yùn)作單位。

一個(gè)線程指的是進(jìn)程中一個(gè)單一順序的控制流。

一個(gè)進(jìn)程中可以并發(fā)多條線程,每條線程并行執(zhí)行不同的任務(wù)。

Num02–>進(jìn)程

進(jìn)程就是一個(gè)程序在一個(gè)數(shù)據(jù)集上的一次動(dòng)態(tài)執(zhí)行過程。

進(jìn)程有以下三部分組成:

1,程序:我們編寫的程序用來描述進(jìn)程要完成哪些功能以及如何完成。
2,數(shù)據(jù)集:數(shù)據(jù)集則是程序在執(zhí)行過程中需要的資源,比如圖片、音視頻、文件等。
3,進(jìn)程控制塊:進(jìn)程控制塊是用來記錄進(jìn)程的外部特征,描述進(jìn)程的執(zhí)行變化過程,系統(tǒng)可以用它來控制和管理進(jìn)程,它是系統(tǒng)感知進(jìn)程存在的唯一標(biāo)記。

Num03–>進(jìn)程和線程的區(qū)別:

1、運(yùn)行方式不同:

進(jìn)程不能單獨(dú)執(zhí)行,它只是資源的集合。

進(jìn)程要操作CPU,必須要先創(chuàng)建一個(gè)線程。

所有在同一個(gè)進(jìn)程里的線程,是同享同一塊進(jìn)程所占的內(nèi)存空間。

2,關(guān)系

進(jìn)程中第一個(gè)線程是主線程,主線程可以創(chuàng)建其他線程;其他線程也可以創(chuàng)建線程;線程之間是平等的。

進(jìn)程有父進(jìn)程和子進(jìn)程,獨(dú)立的內(nèi)存空間,唯一的標(biāo)識(shí)符:pid。

3,速度

啟動(dòng)線程比啟動(dòng)進(jìn)程快。

運(yùn)行線程和運(yùn)行進(jìn)程速度上是一樣的,沒有可比性。

線程共享內(nèi)存空間,進(jìn)程的內(nèi)存是獨(dú)立的。

4,創(chuàng)建

父進(jìn)程生成子進(jìn)程,相當(dāng)于復(fù)制一份內(nèi)存空間,進(jìn)程之間不能直接訪問

創(chuàng)建新線程很簡單,創(chuàng)建新進(jìn)程需要對(duì)父進(jìn)程進(jìn)行一次復(fù)制。

一個(gè)線程可以控制和操作同級(jí)線程里的其他線程,但是進(jìn)程只能操作子進(jìn)程。

5,交互

同一個(gè)進(jìn)程里的線程之間可以直接訪問。

兩個(gè)進(jìn)程想通信必須通過一個(gè)中間代理來實(shí)現(xiàn)。

Num04–>幾個(gè)常見的概念

1,什么的并發(fā)和并行?

并發(fā):微觀上CPU輪流執(zhí)行,宏觀上用戶看到同時(shí)執(zhí)行。因?yàn)閏pu切換任務(wù)非常快。

并行:是指系統(tǒng)真正具有同時(shí)處理多個(gè)任務(wù)(動(dòng)作)的能力。

2,同步、異步和輪詢的區(qū)別?

同步任務(wù):B一直等著A,等A完成之后,B再執(zhí)行任務(wù)。(打電話案例)

輪詢?nèi)蝿?wù):B沒有一直等待A,B過一會(huì)來問一下A,過一會(huì)問下A

異步任務(wù):B不需要一直等著A, B先做其他事情,等A完成后A通知B。(發(fā)短信案例)

Num05–>進(jìn)程和線程的優(yōu)缺點(diǎn)比較

首先,要實(shí)現(xiàn)多任務(wù),通常我們會(huì)設(shè)計(jì)Master-Worker模式,Master負(fù)責(zé)分配任務(wù),Worker負(fù)責(zé)執(zhí)行任務(wù),因此,多任務(wù)環(huán)境下,通常是一個(gè)Master,多個(gè)Worker。

如果用多進(jìn)程實(shí)現(xiàn)Master-Worker,主進(jìn)程就是Master,其他進(jìn)程就是Worker。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 江阴市| 聊城市| 凤庆县| 淳化县| 嵩明县| 广灵县| 乡城县| 宣城市| 南郑县| 繁峙县| 姜堰市| 天柱县| 西宁市| 且末县| 拜城县| 宜良县| 嘉善县| 阿鲁科尔沁旗| 洛南县| 高安市| 玛多县| 宣汉县| 伊金霍洛旗| 镇江市| 永嘉县| 扶绥县| 萨嘎县| 手机| 大兴区| 鄂托克前旗| 乐清市| 灌南县| 东山县| 金门县| 贵德县| 明水县| 九江县| 浙江省| 高碑店市| 郁南县| 麻阳|