作者Bode123 (我不G8,只是中肯了點)
看板LinuxDev
標題[問題] Linux程式開發疑慮
時間Sat Jan 17 12:30:00 2015
想問幾個特別的小問題 看有沒有解答
1. system()的使用:有人在多執行緒的程式上會使用這函式嗎?
以目前經驗,似乎執行太多次程式記憶體會出問題,有人有類似情況嗎??
目前是有避掉的方式 只是很好奇為何會這樣??
2.
fp = fopen("/home/text", "r");
fd = fileno(fp);
結束後究竟要怎麼關閉才是最正確的?
1.close(fd); 2 fclose(fp);
fclose(fp);
同理 在socket程式上很常出現的 fdopen()
FILE * fp = fdopen(socketfd, "w+"); //
結束時
只要fclose(fp)就好 還是也要close(socketfd);
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.158.136.54
※ 文章網址: https://www.ptt.cc/bbs/LinuxDev/M.1421469003.A.637.html
※ 編輯: Bode123 (49.158.136.54), 01/17/2015 12:31:18
→ final01: 直接用fclose才是正確,這是對應的! 01/17 14:52
→ final01: 記憶體有問題有很多種情況吧...可以再描述清楚一點 01/17 14:52
推 readonly: 請讀 man 3 system 的 note 01/17 22:23