Go进程/线程/协程:单元 空间资源 切换 共享
生活随笔
收集整理的這篇文章主要介紹了
Go进程/线程/协程:单元 空间资源 切换 共享
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
https://www.imooc.com/article/31751
進程process 線程 thread? ?協程goroutine
操作系統分為操作與資源兩部分,操作就是方法,資源就是硬盤資源,合稱為操作系統。
因為是一個系統,任務很多很繁雜,所以根據軟件不同進行分解,一個軟件就是一小塊,就是進程。
進程
比喻:進程就是應用程序的啟動實例,一個軟件一個進程,
例如我們運行一個游戲,打開一個軟件,就是開啟了一個進程。
啟動一個軟件會把此進程代碼注入到cpu的寄存器中,CPU就可以操作該軟件的資源
不共享資源
線程
線程從屬于進程,?是程序執行流的最小單元 ,是被cpu調度和分派的基本單位
沒有自己的資源,只擁有自己的棧空間,一個線程需要512k空間
可以與同進程的其他線程共享資源。
協程
協程是比線程更加輕量級的存在。一個線程可擁有多個協程,全是由程序就是我們自己所控制
開辟一個協程大概需要5k空間
切換成本小
參考
https://blog.csdn.net/daaikuaichuan/article/details/82951084
https://blog.csdn.net/weixin_42157608/article/details/80362542
對比
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Go进程/线程/协程:单元 空间资源 切换 共享的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小霸王文化发展有限公司涉非法集资 怎么回
- 下一篇: Yii视图组件