簡介
經常在linux下開發程式,使用習慣了ps, top, gdb, strace
等除錯命令,用起來挺方便。
現在需要在在windows下除錯,也查詢了些工具和方法,作一小結。不當之處,請不吝指出。
以windows server2008r2系統為例。
使用資源管理器
這個方法簡單方便,但所能檢視到的資訊也有限。步驟如下:
在狀態列右鍵——開啟任務管理器——程序——選單 檢視 —— 選擇列
在彈出的視窗中選擇執行緒數核取方塊,也可根據需要選擇其他選項
確定,即可在任務管理器的程序頁面看到執行緒數
當然也可以開啟其他選項,看到關於程序的更多資訊。
使用工具process explore
process explorer可以檢視程序開啟的檔案、目錄、載入的dll、執行緒資訊等。上述頁面有詳細介紹。
開啟工具,選中要檢視的程序
頁面上方會出現一系列選單,選擇threads,會顯示所有執行緒資訊
更多功能,等待探索。
程序中線程間通訊
一般而言,應用程式中的乙個次要執行緒總是為主執行緒執行特定的任務,這樣,主線程和次要執行緒間必定有乙個資訊傳遞的渠道,也就是主線程和次要執行緒間要進行通訊。這種執行緒間的通訊不但是難以避免的,而且在多執行緒程式設計中也是複雜和頻繁的,下面將進行說明。由於屬於同乙個程序的各個執行緒共享作業系統分配該程...
python中線程 程序 協程
多執行緒 執行緒的併發是利用cpu上下文的切換 是併發,不是並行 多執行緒執行的順序是無序的 多執行緒共享全域性變數 執行緒是繼承在程序裡的,沒有程序就沒有執行緒 gil全域性直譯器鎖 只要在進行耗時的io操作的時候,能釋放gil,所以只要在io密集型的 裡,用多執行緒就很合適 在cpu密集時候不適...
檢視程序執行緒
ps ef grep syslog grep v grep awk 先看ps ef grep syslog的輸出 我沒有打馬賽克,千萬不要攻擊我的電腦啊 grep的輸出都會有grep自身這個程序在,用grep v grep 可以把這一行乾掉,然後awk 就是列印第二列數字,我這裡是在docker容器...