日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

任务 进程 线程区别

發(fā)布時間:2024/4/14 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 任务 进程 线程区别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

任務、進程、線程區(qū)別

??????? 任務,是指軟件完成的一個活動。一個任務可以是一個進程也可以是一個線程。簡而言之,就是一系列共同達到某一目的的操作。例如讀取數(shù)據(jù)并將數(shù)據(jù)存放入內存。

??????? 進程,常被定義為程序的執(zhí)行,可以把一個進程看成一個獨立的程序,在內存中有其完備的數(shù)據(jù)空間和代碼空間。一個進程所擁有的數(shù)據(jù)和變量只屬于他自己。

???????? 線程,某一進程中一路單獨運行的程序。也就是線程存在于進程之中,一個進程由一個或多個線程構成,各線程共享相同的代碼和全局數(shù)據(jù),但各有自己的堆棧。由于堆棧是每個線程一個,因此局部變量對每一線程來說是私有的。由于所有縣城共享同樣的代碼和全局數(shù)據(jù),他們比進程更緊密,線程間的相互作用更容易,因為他們本身有某些供通信用的共享內存:進程的全局數(shù)據(jù)。

??????

一個進程和一個線程最顯著的區(qū)別是:線程有自己的全局數(shù)據(jù)。線程存在于進程中,因此一個進程的全局變量由所有的線程共享。由于線程共享同樣的系統(tǒng)區(qū)域,操作系統(tǒng)分配給一個進程的資源對該進程的所有線程都是可用的,正如全局數(shù)據(jù)可供所有線程使用一樣

?

進程概念?
  進程是表示資源分配的基本單位,又是調度運行的基本單位。例如,用戶運行自己的程序,系統(tǒng)就創(chuàng)建一個進程,并為它分配資源,包括各種表格、內存空間、磁盤空間、I/O設備等。然后,把該進程放人進程的就緒隊列。進程調度程序選中它,為它分配CPU以及其它有關資源,該進程才真正運行。所以,進程是系統(tǒng)中的并發(fā)執(zhí)行的單位。?
  在Mac、Windows NT等采用微內核結構的操作系統(tǒng)中,進程的功能發(fā)生了變化:它只是資源分配的單位,而不再是調度運行的單位。在微內核系統(tǒng)中,真正調度運行的基本單位是線程。因此,實現(xiàn)并發(fā)功能的單位是線程。
線程概念?
  線程是進程中執(zhí)行運算的最小單位,亦即執(zhí)行處理機調度的基本單位。如果把進程理解為在邏輯上操作系統(tǒng)所完成的任務,那么線程表示完成該任務的許多可能的子任務之一。例如,假設用戶啟動了一個窗口中的數(shù)據(jù)庫應用程序,操作系統(tǒng)就將對數(shù)據(jù)庫的調用表示為一個進程。假設用戶要從數(shù)據(jù)庫中產(chǎn)生一份工資單報表,并傳到一個文件中,這是一個子任務;在產(chǎn)生工資單報表的過程中,用戶又可以輸人數(shù)據(jù)庫查詢請求,這又是一個子任務。這樣,操作系統(tǒng)則把每一個請求――工資單報表和新輸人的數(shù)據(jù)查詢表示為數(shù)據(jù)庫進程中的獨立的線程。線程可以在處理器上獨立調度執(zhí)行,這樣,在多處理器環(huán)境下就允許幾個線程各自在單獨處理器上進行。操作系統(tǒng)提供線程就是為了方便而有效地實現(xiàn)這種并發(fā)性?
引入線程的好處?
(1)易于調度。?
(2)提高并發(fā)性。通過線程可方便有效地實現(xiàn)并發(fā)性。進程可創(chuàng)建多個線程來執(zhí)行同一程序的不同部分。?
(3)開銷少。創(chuàng)建線程比創(chuàng)建進程要快,所需開銷很少。。?
(4)利于充分發(fā)揮多處理器的功能。通過創(chuàng)建多線程進程(即一個進程可具有兩個或更多個線程),每個線程在一個處理器上運行,從而實現(xiàn)應用程序的并發(fā)性,使每個處理器都得到充分運行。?
進程和線程的關系?
(1)一個線程只能屬于一個進程,而一個進程可以有多個線程,但至少有一個線程。?
(2)資源分配給進程,同一進程的所有線程共享該進程的所有資源。?
(3)處理機分給線程,即真正在處理機上運行的是線程。?
(4)線程在執(zhí)行過程中,需要協(xié)作同步。不同進程的線程間要利用消息通信的辦法實現(xiàn)同步。

轉載于:https://blog.51cto.com/yangfei1/393232

總結

以上是生活随笔為你收集整理的任务 进程 线程区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。