Golang select的使用及典型用法

2021-08-28 10:46:00 字數 566 閱讀 7336

1、select是go中的乙個控制結構,類似於switch語句,用於處理非同步io操作。select會監聽case語句中channel的讀寫操作,當case中channel讀寫操作為非阻塞狀態(即能讀寫)時,將會觸發相應的動作。

select中的case語句必須是乙個channel操作

select中的default子句總是可執行的。

如果有多個case都可以執行,select會隨機公平地選出乙個執行,其他不會執行。

如果沒有可執行的case語句,且有default語句,那麼就會執行default的動作。

如果沒有可執行的case語句,且沒有default語句,select將阻塞,直到某個case通訊可以執行

例如: 

package main

import "fmt"

func main() else

default:

fmt.printf("no communication\n")

}

}

Golang select 基礎語法與用法

select語句用來處理與channel有關的i o操作。每個case都必須是乙個通訊 所有channel表示式和被傳送的表示式都會被求值 任意某個通道可以執行,它就執行,其他被忽略 多個case可以執行,隨機選乙個執行 都不可以執行,有default,執行default,沒有就阻塞,直到某個通訊可...

類的使用,物件的使用

一 類的使用 class student school luffycity def eat self print yes defdrink self print drink 檢視print student.dict 增student.teacher gaohui print student.dict...

messagebox的使用(使用整理)

定義 messagebox顯示乙個模態對話方塊,其中包含乙個系統圖示 一組按鈕和乙個簡短的特定於應用程式訊息,如狀態或錯誤的資訊。訊息框中返回乙個整數值,該值指示使用者單擊了哪個按鈕。messagebox hwnd hwnd text,caption pchar type word hwnd 訊息框...