go語言的運行時支持到底是多線程還是單線程?
總所周知,GO是提供了協程的支持,這種運行時進行協程的調度非常有意思,協程調度的過程中一樣會產生切換消耗,只是消耗更小。
那么問題來了,在N個內核線程上跑的M個協程,實現起來是否比直接支持內核線程更容易?
簡單總結一下,JAVA是直接用內核線程執行字節碼,GO是用協程處理字節碼,等等,沒有開啟協程的情況下,GO是否是單線程模式?比如GO的main函數
--------------------------------------------------------------------------------
群友已證明,GO1.5之后,包括main函數,都是協程模式