.\" Copyright (c) 2003 Andries Brouwer (aeb@cwi.nl)
.\"
.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, see
.\" .
.\" %%%LICENSE_END
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.\"
.\" Japanese Version Copyright (c) 2004 Yuichi SATO
.\" all rights reserved.
.\" Translated Thu Jul 01 02:44:30 JST 2004
.\" by Yuichi SATO
.\" Updated 2012-05-29, Akihiro MOTOKI
.\" Updated 2012-05-02, Akihiro MOTOKI
.\" Updated 2012-04-30, Akihiro MOTOKI
.\"
.TH AIO_CANCEL 3 2020\-06\-09 "" "Linux Programmer's Manual"
.SH 名前
aio_cancel \- 完了していない非同期 I/O リクエストをキャンセルする
.SH 書式
\fB#include \fP
.PP
\fBint aio_cancel(int \fP\fIfd\fP\fB, struct aiocb *\fP\fIaiocbp\fP\fB);\fP
.PP
\fI\-lrt\fP でリンクする。
.SH 説明
\fBaio_cancel\fP() 関数は、ファイルディスクリプター \fIfd\fP についての完了して
いない非同期 I/O リクエストをキャンセルしようとする。 \fIaiocbp\fP が
NULL の場合、そのような全てのリクエストがキャンセルされる。 \fIaiocbp\fP
が NULL でない場合、\fIaiocbp\fP で指された制御ブロックで記述されたリクエ
ストのみがキャンセルされる。(\fIaiocb\fP 構造体の説明は \fBaio\fP(7) を参照)
.PP
キャンセルされたリクエストに対して、通常の非同期通知が起こる
(\fBaio\fP(7) と \fBsigevent\fP(7) を参照)。
リクエストの返り値 (\fBaio_return\fP(3)) は \-1 に設定され、
リクエストのエラー状態 (\fBaio_error\fP(3)) は \fBECANCELED\fP に設定される。
キャンセルできないリクエストの制御ブロックは変更されない。
.PP
リクエストがキャンセルできない場合には、
\fBaio_cancel\fP() は通常の I/O 操作の実行後と同じように終了する。
(この場合、 \fBaio_error\fP(3) はステータス \fBEINPROGRESSS\fP を返す)。
.PP
\fIaiocbp\fP が NULL でなく、かつ \fIfd\fP が非同期操作が開始されたファイルディスクリプターと異なる場合、 生じる結果は不定である。
.PP
.\" FreeBSD: not those on raw disk devices.
どの操作をキャンセルできるかは、実装定義である。
.SH 返り値
\fBaio_cancel\fP() 関数は以下のいずれかの値を返す。
.TP
\fBAIO_CANCELED\fP
全てのリクエストが正常にキャンセルされた。
.TP
\fBAIO_NOTCANCELED\fP
指定されたリクエストのうち少なくとも一つが、実行中のため
キャンセルできなかった。この場合には、\fBaio_error\fP(3) を使って
個々のリクエストの状態を確認できる。
.TP
\fBAIO_ALLDONE\fP
呼び出しの前に全てのリクエストがすでに完了していた。
.TP
\-1
エラーが発生した。
\fIerrno\fP を確認することでエラーの原因を知ることができる。
.SH エラー
.TP
\fBEBADF\fP
\fIfd\fP が有効なファイルディスクリプターでない。
.TP
\fBENOSYS\fP
\fBaio_cancel\fP() は実装されていない。
.SH バージョン
\fBaio_cancel\fP() 関数は glibc 2.1 以降で利用できる。
.SH 属性
この節で使用されている用語の説明については、 \fBattributes\fP(7) を参照。
.TS
allbox;
lb lb lb
l l l.
インターフェース 属性 値
T{
\fBaio_cancel\fP()
T} Thread safety MT\-Safe
.TE
.SH 準拠
POSIX.1\-2001, POSIX.1\-2008.
.SH 例
\fBaio\fP(7) を参照。
.SH 関連項目
\fBaio_error\fP(3), \fBaio_fsync\fP(3), \fBaio_read\fP(3), \fBaio_return\fP(3),
\fBaio_suspend\fP(3), \fBaio_write\fP(3), \fBlio_listio\fP(3), \fBaio\fP(7)
.SH この文書について
この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は
\%https://www.kernel.org/doc/man\-pages/ に書かれている。