當上下文變量超出範圍並且未明確調用cancel時,context.Done()會解鎖嗎?當上下文變量超出golang的範圍時,Context.Done()是否解鎖?
比方說,我有以下代碼:
func DoStuff() {
ctx, _ := context.WithCancel(context.Background())
go DoWork(ctx)
return
}
威爾ctx.Done()取消阻止的DoWork在DoStuff迴歸後的()?
我找到了這個線程https://groups.google.com/forum/#!topic/golang-nuts/BbvTlaQwhjw,在那裏詢問如何使用Context.Done()的人聲稱,context.Done()將在上下文變量離開範圍時解除阻塞,但沒有人驗證過這一點,而且我沒有看到文檔中的任何內容。
我想你認爲這個人只是在問一個關於它是否被自動取消而不是聲稱任何東西的問題。 –