本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
HP-UX リファレンス: セクション 2 : システムコール > c

close(2)

HP-UX 11i Version 2: September 2004
≫ 

テクニカル ドキュメント

PDF版
フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

名称

close ― ファイル記述子のクローズ

構文

#include <unistd.h>

int close(int fildes);

説明

close() は、 fildes で示されるファイル記述子をクローズします。 fildes は、 creat(), open(), dup(), fcntl() または pipe() システムコールで得られるファイル記述子です。 lockf() 関数を使用してプロセスがロックしたすべてのファイルセグメントは、 解放 (アンロック) されます。

戻り値

正常終了すると、 close() は 0 の値を返します。 失敗すると -1 を返し、エラーの種類を示す値が errno にセットされます。

エラー

close() は、次の条件の場合に失敗します。

[EBADF] 

fildes が、正しい開いているファイルの記述子でない場合

[EINTR] 

aio 要求 (非同期入出力要求) が保留されている遅いデバイス、接続、またはファイルのクローズが、シグナルにより割り込まれた場合。 ファイル記述子は、開いたデバイス、接続、またはファイルを指したままです。

[ENOSPC] 

ファイルシステムに十分な領域がない場合。 このエラーは、 NFS ファイルシステムのファイルをクローズする場合に発生することがあります。[ write() システムコールがローカルファイルシステムで実行されるときに、 データを保持するために新しいバッファーを割り当てる必要があれば、そのときに バッファーをディスクにマップするとします。 このときにディスクがいっぱいであることが発見されると、 write() はエラーを返します。 write() システムコールが NFS ファイルシステムで実行される場合は、( NFS の効率を改善するための) バッファーのための領域があるかどうかを調べるために、 NFS サーバーと通信せずに新しいバッファーが確保されます。 バッファーがサーバーに書き込まれたとき (ファイルのクローズまたは バッファーがいっぱいのとき) にだけ、 ディスクがいっぱいであることが発見されます。

参照

creat(2), dup(2), exec(2), fcntl(2), lockf(2), open(2), pipe(2), thread_safety(5)

標準準拠

close(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 1983-2004 Hewlett-Packard Development Company, L.P.