線程和進程的區別是什么?
1、定義不一樣,進程是執行中的一段程序,而一個進程中執行中的每個任務即為一個線程。
2、一個線程只可以屬于一個進程,但一個進程能包含多個線程。
3、線程無地址空間,它包括在進程的地址空間里。
4、線程的開銷或代價比進程的小。
并行和并發有什么區別?
并發(concurrency):把任務在不同的時間點交給處理器進行處理。在同一時間點,任務并不會同時運行。
并行(parallelism):把每一個任務分配給每一個處理器獨立完成。在同一時間點,任務一定是同時運行。
并發不是并行。并行是讓不同的代碼片段同時在不同的物理處理器上執行。并行的關鍵是同時做很多事情,而并發是指同時管理很多事情,這些事情可能只做了一半就被暫停去做別的事情了。
關鍵詞: 線程和進程的區別是什么 并行和并發有