2011-04-25 105 views
1

我正在嘗試調試服務。通常的過程是啓動服務並將gdb附加到進程。但是我想在服務仍然啓動時調試代碼。 gdb加載庫需要一段時間,並且必須的代碼已經執行,然後才能放置斷點。任何想法如何做到這一點?謝謝!服務啓動時調試

回答

2

讓我們假設你的服務被稱爲「myservice.exe」

如果能在包裝盒上獲取的代碼實際上是運行在的話,我會做到以下幾點:

$ gdb myservice.exe 
(gdb) break myclass:myfunction 
(gdb) run 

這應該得到你想要的。

注意:如果你不能直接運行gdb,那麼在開始的時候(在要調試的部分之前)放置一個「睡眠」語句1分鐘 - 應該允許你在開始敏感之前進行連接碼。