」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 為什麼我的 Goroutine 輸出在 Windows 上消失?

為什麼我的 Goroutine 輸出在 Windows 上消失?

發佈於2024-11-11
瀏覽:641

Why Does My Goroutine Output Disappear on Windows?

Windows 上的Goroutine 執行:靜默故障故障排除

涉及Goroutine 的簡單測試在Windows 上顯示出意外的行為,因為未產生預期的輸出。出現問題的原因是 main 函數在終止之前沒有等待 goroutine 完成。

Go Awaits

當使用「go」關鍵字啟動 goroutine 時,它與 main 函數同時執行。但是,main 函數的執行不會暫停並等待呼叫的 goroutine 完成。因此,main 函數退出,可能導致 goroutine 無法調度。

補救措施

為了確保 goroutine 有機會執行並列印其輸出, main必須修改函數等待一段時間。這可以使用“time”套件和“Sleep”函數來實現。透過引入睡眠時間,主函數讓 goroutine 有機會在終止之前運行並產生輸出。

修改後的程式碼

以下修改後的程式碼透過以下方式解決了該問題在main函數末尾添加10秒的睡眠時間:

package main

import (
    "fmt"
    "time"
)

func test() {
    fmt.Println("test")
}

func main() {
    go test()
    time.Sleep(10 * time.Second)
}

輸出

修改後的程式碼現在產生預期的輸出:

test

此修改允許main 函數等待啟動goroutine 後,在程式終止之前給它足夠的時間執行並列印「test」訊息。

最新教學 更多>
  • 如何使用Java.net.urlConnection和Multipart/form-data編碼使用其他參數上傳文件?
    如何使用Java.net.urlConnection和Multipart/form-data編碼使用其他參數上傳文件?
    使用http request 上傳文件上傳到http server,同時也提交其他參數,java.net.net.urlconnection and Multipart/form-data Encoding是普遍的。 Here's a breakdown of the process:Mu...
    程式設計 發佈於2025-04-16
  • Python高效去除文本中HTML標籤方法
    Python高效去除文本中HTML標籤方法
    在Python中剝離HTML標籤,以獲取原始的文本表示 僅通過Python的MlStripper 來簡化剝離過程,Python Standard庫提供了一個專門的功能,MLSTREPERE,MLSTREPERIPLE,MLSTREPERE,MLSTREPERIPE,MLSTREPERCE,MLST...
    程式設計 發佈於2025-04-16
  • 如何在php中使用捲髮發送原始帖子請求?
    如何在php中使用捲髮發送原始帖子請求?
    如何使用php 創建請求來發送原始帖子請求,開始使用curl_init()開始初始化curl session。然後,配置以下選項: curlopt_url:請求 [要發送的原始數據指定內容類型,為原始的帖子請求指定身體的內容類型很重要。在這種情況下,它是文本/平原。要執行此操作,請使用包含以下標頭...
    程式設計 發佈於2025-04-16
  • 如何使用FormData()處理多個文件上傳?
    如何使用FormData()處理多個文件上傳?
    )處理多個文件輸入時,通常需要處理多個文件上傳時,通常是必要的。 The fd.append("fileToUpload[]", files[x]); method can be used for this purpose, allowing you to send multi...
    程式設計 發佈於2025-04-16
  • 如何在其容器中為DIV創建平滑的左右CSS動畫?
    如何在其容器中為DIV創建平滑的左右CSS動畫?
    通用CSS動畫,用於左右運動 ,我們將探索創建一個通用的CSS動畫,以向左和右移動DIV,從而到達其容器的邊緣。該動畫可以應用於具有絕對定位的任何div,無論其未知長度如何。 問題:使用左直接導致瞬時消失 更加流暢的解決方案:混合轉換和左 [並實現平穩的,線性的運動,我們介紹了線性的轉換。...
    程式設計 發佈於2025-04-16
  • 如何檢查對像是否具有Python中的特定屬性?
    如何檢查對像是否具有Python中的特定屬性?
    方法來確定對象屬性存在尋求一種方法來驗證對像中特定屬性的存在。考慮以下示例,其中嘗試訪問不確定屬性會引起錯誤: >>> a = someClass() >>> A.property Trackback(最近的最新電話): 文件“ ”,第1行, AttributeError: SomeClass...
    程式設計 發佈於2025-04-16
  • 點擊顯示圖片的技巧及方法
    點擊顯示圖片的技巧及方法
    網絡上的大多數圖像都是多餘的。如果我可能有點混蛋,那麼其中99%的人甚至根本沒有幫助(儘管有極少數例外)。那是因為圖像通常不補充他們應該支持的文本,而是用戶,將永遠加載和炸毀像某種績效稅之類的數據上限。 值得慶幸的是,這主要是一個設計問題,因為使圖像表現效果和更易於用戶友好比以前要容易得多。我們具有...
    程式設計 發佈於2025-04-16
  • 如何修復\“常規錯誤:2006 MySQL Server在插入數據時已經消失\”?
    如何修復\“常規錯誤:2006 MySQL Server在插入數據時已經消失\”?
    How to Resolve "General error: 2006 MySQL server has gone away" While Inserting RecordsIntroduction:Inserting data into a MySQL database can...
    程式設計 發佈於2025-04-16
  • 您如何在Laravel Blade模板中定義變量?
    您如何在Laravel Blade模板中定義變量?
    在Laravel Blade模板中使用Elegance 在blade模板中如何分配變量對於存儲以後使用的數據至關重要。在使用“ {{}}”分配變量的同時,它可能並不總是最優雅的解決方案。 幸運的是,Blade通過@php Directive提供了更優雅的方法: $ old_section =...
    程式設計 發佈於2025-04-16
  • HTML格式標籤
    HTML格式標籤
    HTML 格式化元素 **HTML Formatting is a process of formatting text for better look and feel. HTML provides us ability to format text without us...
    程式設計 發佈於2025-04-16
  • 如何解決由於Android的內容安全策略而拒絕加載腳本... \”錯誤?
    如何解決由於Android的內容安全策略而拒絕加載腳本... \”錯誤?
    Unveiling the Mystery: Content Security Policy Directive ErrorsEncountering the enigmatic error "Refused to load the script..." when deployi...
    程式設計 發佈於2025-04-16
  • CSS強類型語言解析
    CSS強類型語言解析
    您可以通过其强度或弱输入的方式对编程语言进行分类的方式之一。在这里,“键入”意味着是否在编译时已知变量。一个例子是一个场景,将整数(1)添加到包含整数(“ 1”)的字符串: result = 1 "1";包含整数的字符串可能是由带有许多运动部件的复杂逻辑套件无意间生成的。它也可以是故意从单个真理...
    程式設計 發佈於2025-04-16
  • 如何使用PHP從XML文件中有效地檢索屬性值?
    如何使用PHP從XML文件中有效地檢索屬性值?
    從php PHP陷入困境。 使用simplexmlelement :: attributes()函數提供了簡單的解決方案。此函數可訪問對XML元素作為關聯數組的屬性: - > attributes()為$ attributeName => $ attributeValue){ echo...
    程式設計 發佈於2025-04-16
  • 使用Lambda表達式與PyQt槽函數為何導致意外行為?
    使用Lambda表達式與PyQt槽函數為何導致意外行為?
    使用lambda表達式連接pyqt 中的插槽,可以使用lambda表達式將信號連接到插槽。但是,在某些方案中使用lambda表達式可能會導致意外行為。 考慮以下代碼:類mainwindow(qtgui.qwidget): def __init __(自我): ... ...
    程式設計 發佈於2025-04-16
  • 包在構建時找不到原因及解決方法
    包在構建時找不到原因及解決方法
    fixing fixing“無法在go build Understanding the Package Directory StructureGo expects packages to reside in directories with the same name as their pack...
    程式設計 發佈於2025-04-16

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3