LinuxDev 板


LINE

※ [本文轉錄自 C_and_CPP 看板] 作者: cerebellum (ymca) 看板: C_and_CPP 標題: [問題]定期砍掉run的死程序 時間: Wed Sep 26 21:03:52 2007 由於qkmj這個程式若是不正常斷線 會造成一個死程序 且cpu資源大量被其佔用 參考了彰師大生物系BioStar的程式 發現在ubuntu上實際執行起來只會砍掉一個執行序 而不會把全部正在run的qkmj程式砍除 而且有時候執行根本無效 要執行多次才會成功 以下是程式碼 有經過稍微的修改(因為原本的根本不會跑) 是否可以請各位幫忙看一下是那裡的問題 感謝 checkqkmj.c #include <stdio.h> int main() { int line; FILE *fp; char a[20], b[20], c[20], d[20], e[20], f[20]; char g[20], h[20], i[20], j[20], k[20]; char cmd[128], *str; char tmpfile[32]; int process_a[16], process_b[16], ii, jj; strcpy(tmpfile, "/tmp/killtop1"); /* 只取出非 idle 中的 qkmj */ sprintf(cmd, "top -i -b -n 1 | grep qkmj > %s", tmpfile); /* 製作第一份執行中 qkmj 程序名單 */ system(cmd); if (!(fp = fopen(tmpfile, "r"))) return -1; for (line = 0; line <= 14; line++) if (fscanf(fp, "%s %s %s %s %s %s %s %s %s %s %s", a, b, c, d, e, f, g, h, i, j, k) == 11) process_a[line] = atoi(a); else process_a[line] = 0; fclose(fp); unlink(tmpfile); sleep(5); /* 小睡五秒 */ /* 製作第二份執行中 qkmj 程序名單 */ system(cmd); if (!(fp = fopen(tmpfile, "r"))) return -1; for (line = 0; line <= 14; line++) if (fscanf(fp, "%s %s %s %s %s %s %s %s %s %s %s", a, b, c, d, e, f, g, h, i, j, k) == 11) process_b[line] = atoi(a); else process_b[line] = 0; fclose(fp); unlink(tmpfile); /* 比對兩份 qkmj 程序名單 */ for (ii = 0; ii <= 14; ii++) { if (!process_a[ii]) break; for (jj = 0; jj <= 14; jj++) { if (!process_b[jj]) break; if (process_a[ii] == process_b[jj]) /* 如果發現有相同 */ { sprintf(cmd, "kill -9 %d", process_a[ii]); system(cmd); /* 代表這極有可能是死程序,必須 kill 掉 */ } } } return 0; } --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.64.220
1F:→ sunneo:... 09/26 21:05
-- IceCold::IceCode --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.228.138
2F:推 yhuiyang:兩個for loop中的break是continue的筆誤? 09/27 00:53







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP