共計 602 個字符,預計需要花費 2 分鐘才能閱讀完成。
在 Go 語言中,可以使用 goroutine 來實現多線程。goroutine 是 Go 語言中的輕量級線程,可以同時運行在一個操作系統線程上。
要創建一個 goroutine,只需要在函數調用前加上關鍵字 go 即可,例如:
func main() {go func1() // 創建 goroutine 并執行函數 func1()
go func2() // 創建 goroutine 并執行函數 func2()
// 等待所有 goroutine 執行完畢
time.Sleep(time.Second)
}
func func1() {// 第一個 goroutine 的邏輯代碼}
func func2() {// 第二個 goroutine 的邏輯代碼}
在上面的例子中,我們在 main 函數中創建了兩個 goroutine,并分別執行了函數 func1() 和 func2()。由于 goroutine 是并發執行的,所以這兩個函數可以同時運行。
如果需要等待所有的 goroutine 執行完畢,可以使用 time 包中的 Sleep 函數進行等待。在上面的例子中,我們等待了 1 秒鐘,使得主線程等待兩個 goroutine 執行完畢后再退出。
需要注意的是,每個 goroutine 都運行在相同的地址空間,因此它們可以直接訪問共享的變量。為了避免多個 goroutine 對共享變量的并發訪問導致的競態條件問題,可以使用 Go 語言提供的互斥鎖(sync.Mutex)等機制進行同步操作。
丸趣 TV 網 – 提供最優質的資源集合!
正文完