多线程,多进程,协程
生活随笔
收集整理的這篇文章主要介紹了
多线程,多进程,协程
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
進(jìn)程:
? ? ? ? 進(jìn)程是系統(tǒng)進(jìn)行資源分配的最小單位,每個進(jìn)程都有自己獨立的內(nèi)存空間。進(jìn)程占據(jù)獨立你空間,比較重量級,所以上下文進(jìn)程間的切換比較消耗資源,但是穩(wěn)定安全。
線程:
? ? ? ? ?線程是進(jìn)程的一個實體,是CPU進(jìn)行調(diào)度的最小單位,他是比進(jìn)程更小能獨立運行的單位,線程基本不擁有系統(tǒng)資源,只占用一點運行中的資源如程序計數(shù)器,一組寄存器和棧。但是他可以與同屬于一個進(jìn)程的其他線程共享全部的數(shù)據(jù),提高程序的運行速率,上下文切換快,開銷比較小。但是不夠穩(wěn)定,容易丟失數(shù)據(jù),形成死鎖。
協(xié)程:
? ? ? ? ?是更小的執(zhí)行單位,是一種輕量級的線程,協(xié)程的切換只是單純的操作CPU的上下文,所以切換速度特別快,且消耗性能小。協(xié)程和操作系統(tǒng)沒有關(guān)系,是程序員自己實現(xiàn)的,上下文的切換都是在一跳主線上,相當(dāng)于兩個函數(shù)互相切換,速率非常快,而且耗能特別小。
轉(zhuǎn)載于:https://www.cnblogs.com/zhangshuyang/p/8064818.html
總結(jié)
以上是生活随笔為你收集整理的多线程,多进程,协程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4.1 使用STM32控制MC20拨打电
- 下一篇: 可伸缩的菜单