kill常用注意點

2021-07-15 06:19:44 字數 822 閱讀 6525

ctrl+c是終止當前在終端視窗中執行的命令或指令碼,

kill -9 pid,是不顧後果的強制終止(如果的你的速度夠快,有時候是和ctrl+c是一樣的)

kill -15 pid,是先關閉和其有關的程式,再將其關閉

一般謹慎使用kill -9,

它沒有給程序留下善後的機會:

1) 關閉socket鏈結

2) 清理臨時檔案

3) 將自己將要被銷毀的訊息通知給子程序

4) 重置自己的終止狀態

等等。通常,應該傳送15,等一兩秒鐘,如果沒效果,傳送2,如果還不行,傳送1。如果還不行,那你應該把那個程式刪掉,因為那個程式寫的太爛了!

不要使用"kill -9"。不要用收割機來修剪花盆裡的花。總之,在使用"kill -9"前,你應該先使用"kill -15",給目標程序乙個清理善後工作的機會。(程序也許無法捕捉或直接忽略sigkill訊號,但它們可以,通常也是能夠捕捉sigterm訊號的。)如果你不留機會讓程序完成清理工作,它們會留下一些不完整的檔案或狀態,當系統重啟時,程式將無法理解這些狀態。

"strace/truss","ltrace"和"gdb"都是檢視乙個卡住的程序因何卡住的好工具。(solaris裡的"truss -u"非常好用;)solaris裡還有一些非常有用的"/proc"相關的工具,有一些已經被移植到了linux上。

關於使用kill出現terminated問題:

1)直接使用kill命令出現:set +m命令

2)直接使用kill正常,使用指令碼出現: 檢測指令碼,是否有kill掉當前sh檔案,即可能存在shell檔案與命令重名。

shell +x :指令碼除錯

Qt常用控制項注意點

乙個控制項的定位包括最基本4個資料 定位座標 x,y 長寬 l,w loader是佔位符,只設定定位座標。component是不可見元件,只設定占用長寬。loader結合component要實現摺疊列表,但component中的根控制項不能使用item,建議使用rectangle,摺疊列表根據loa...

scrapy常用設定和注意點!!!!

setting裡的設定 httperror allowed codes 405 這一條是忽略405錯誤退出程序,有可能跳到405頁面,在parse注意判斷,重新請求頁面 爬蟲裡的設定 meta 這個是限定頁面不能跳轉 dont filter true 這個是不過濾頁面重新爬取,這個在頁面取不到資料裡...

mysql 注意 mysql 注意點

mysql 優化 每個innodb 表都要有乙個主鍵 限制表上索引的數量,避免建立重複和冗餘索引 注意合理選擇復合索引鍵值的順序 優先選擇符合儲存需要的最小的資料型別 varchar n 中的n 代表的是字元數,而不是位元組數 使用utf8 儲存漢字 varchar 255 765 個位元組 過大的...