想實時監視系統信息,用popen+ top 完成。
發現代碼在ubuntu下運行正常,而在arm上一運行,就掛死了。
而運行ls則不會掛死,比較兩個的不同,發現ls是運行一次,而top是一直運行的。
於是修改top命令,改爲只執行一次,得到解決
<span style="white-space:pre"> </span>/* 獲得SOC負載信息 */
TopFP = popen("top -n 1", "r");
if(NULL != TopFP)
{
fgets(topline[0], 256, TopFP);
fgets(topline[1], 256, TopFP);
pclose(TopFP);
}
else
{
printf("top command is invalid!\n");
}