2017-04-10 198 views

回答

4

否重複不會被關閉。否則,主要使用案例(複製到STDOUT_FILENOSTDIN_FILENO)將是無用的。

+1

dup的手冊頁沒有提到關於關閉的任何內容,請問您可以參考我的信息來源嗎?謝謝 – Bionix1441

+2

很明顯,因爲'dup'沒有做任何關閉......你會想參考一些其他的POSIX手冊頁,也許是關於程序執行的一個手冊頁。說到這一點,我敢肯定有一個*(可能更多)的情況下,兩個文件描述符將被關閉:在程序終止。 – Sebivor

+0

@ Bionix1441如果您製作一份副本或一些紙張,然後撕碎原件,您仍然有副本,對不對?這裏基本上是一樣的東西。一旦你創建了副本(帶有'dup'或類似的),那麼在原始和重複描述符之間就沒有鏈接了。您應該也可以閱讀*引用計數*,因爲重複的實際「文件」將通過重複使其引用計數器加1,並且「文件」在引用計數爲零之前不會真正關閉。 –