2017-08-17 53 views
0

有沒有辦法進入,可能打開了一些調試標誌,以獲得堆棧跟蹤的所有goroutines 「父母」公寓的痕跡(在此使用「父母」來表示執行呼叫go foo()的goroutine,它啓動了該goroutine)。這個問題的上下文是我有一個連接泄漏,並注意到在awaitDone(在sql包中)阻塞了很多goroutines,並且這些goroutine在創建連接時產生。獲取「父」子例程以及「孩子」的堆棧

+2

正常的輸出(例如在恐慌中)已經這麼做了,儘管它在邏輯上是可能的*:注意並不是每個正在運行的goroutine都有一個活的父節點。母公司可能早就終止了。那麼問題是什麼? – Volker

+0

我的意思是在創建goroutine時的堆棧。它可能需要一個調試標誌,以便goroutine在創建時可以將這些信息與它們一起存儲,以便在請求堆棧跟蹤時可以使用此調試上下文。 – jonderry

+1

那段時間已過,信息不再存在。 – Volker

回答