Provided by: manpages-zh_1.5.1-3_all bug

NAMEWr
       close - 關閉一蚗仵袨yz符

SYNOPSIS`覽
       #include <unistd.h>

       int close(int fd);

DESCRIPTIONyz
       close  關閉  一  檔案 描z符 , 使它 不在 指向 任何 檔案 和 可以 在 新的
       檔案 操作 中 被 再次 使用.  任何 與 此 檔案 相關聯 的 以及 程式 所 擁有
       的 鎖 , 都 會 被 刪除 (忽略 那些 持有 鎖 的 檔案描z符)

       假如  fd  是  最後  一 檔案描z符 與此 資源 相 關聯 , 則 這 資源 將 被
       釋放.  Y此 描z符 是 最後 一 引用 到 此 檔案 上 的 , 則  檔案  將  使用
       unlink(2) 刪除.

RETURN VALUE^
       close 返回 0 表示 成 , 或者 -1 表示 有 錯誤 發生 .

ERRORS~T息
       EBADF  fd 不是 一 有效 的 已 被 打開 的 檔案 的 描z符

       EINTR  The close() 調用 被 一 信號 中斷.

       EIO    I/O 有 錯誤 發生

CONFORMING TO

       SVr4,  SVID,  POSIX,  X/OPEN,  BSD  4.3.   SVr4 documents an additional
       ENOLINK error condition.

NOTES`N
       通常 不檢測 返回 , 除了 發生 嚴 的  程式  錯誤.   檔案系統   使用  了
       "write-behind"  的 技術 提高 了 執行 write(2) 時 的 性能 . 即使 還 沒有
       被 寫 , 寫操作 也會 成 . 錯誤 信息 在 寫操作 以後 報告 , 但是 這  保証
       在 關閉 檔案 時 報告 . 在 關閉 檔案 時 不檢測 返回 可能 會 導P 數據 的
       丟失 . 這 一點 在 NFS 和 磁碟 配額 上 比較 明顯.

       由於 核心 會 延遲 寫 , 所以 就算 成 關閉 一 檔案 不能  保証  數據  被
       成 的  寫到  磁碟  上.  當 檔案流 關閉 時 , 對 檔案系統 來說 一般 不去
       刷新 緩沖區 . 如果 你 n 保証 數據 寫入 磁碟 等 物理 存貯器 中  就  使用
       fsync(2)  或  sync(2),  他 會 做到 你想做的 (對於 這一點 n 依賴於 磁碟
       設備).

SEE ALSO考
       open(2), fcntl(2), shutdown(2), unlink(2), fclose(3)

[]
            Daniel (badlong@163.com)

[]
            2002/1/10

[]
            Y 發現 錯誤 或 不足 請 與 我 聯系.

                                  1996-04-14                          CLOSE(2)