aio_write.2 (68580) | aio_write.2 (79754) |
---|---|
1.\" Copyright (c) 1999 Softweyr LLC. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 8 unchanged lines hidden (view full) --- 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" | 1.\" Copyright (c) 1999 Softweyr LLC. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. --- 8 unchanged lines hidden (view full) --- 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" |
25.\" $FreeBSD: head/lib/libc/sys/aio_write.2 68580 2000-11-10 20:57:05Z alfred $ | 25.\" $FreeBSD: head/lib/libc/sys/aio_write.2 79754 2001-07-15 07:53:42Z dd $ |
26.\" 27.Dd June 2, 1999 28.Dt AIO_WRITE 2 29.Os 30.Sh NAME 31.Nm aio_write 32.Nd asynchronous write to a file (REALTIME) 33.Sh LIBRARY --- 12 unchanged lines hidden (view full) --- 46to the descriptor 47.Fa iocb->aio_fildes . 48The call returns immediately after the write request has been enqueued 49to the descriptor; the write may or may not have completed at the time 50the call returns. If the request could not be enqueued, generally due 51to invalid arguments, the call returns without having enqueued the 52request. 53.Pp | 26.\" 27.Dd June 2, 1999 28.Dt AIO_WRITE 2 29.Os 30.Sh NAME 31.Nm aio_write 32.Nd asynchronous write to a file (REALTIME) 33.Sh LIBRARY --- 12 unchanged lines hidden (view full) --- 46to the descriptor 47.Fa iocb->aio_fildes . 48The call returns immediately after the write request has been enqueued 49to the descriptor; the write may or may not have completed at the time 50the call returns. If the request could not be enqueued, generally due 51to invalid arguments, the call returns without having enqueued the 52request. 53.Pp |
54If 55.Dv O_APPEND 56is set for | 54If 55.Dv O_APPEND 56is set for |
57.Fa iocb->aio_fildes , 58.Fn aio_write 59operations append to the file in the same order as the calls were 60made. If 61.Dv O_APPEND 62is not set for the file descriptor, the write operation will occur at 63the absolute position from the beginning of the file plus 64.Fa iocb->aio_offset . 65.Pp 66If | 57.Fa iocb->aio_fildes , 58.Fn aio_write 59operations append to the file in the same order as the calls were 60made. If 61.Dv O_APPEND 62is not set for the file descriptor, the write operation will occur at 63the absolute position from the beginning of the file plus 64.Fa iocb->aio_offset . 65.Pp 66If |
67.Dv _POSIX_PRIORITIZED_IO | 67.Dv _POSIX_PRIORITIZED_IO |
68is defined, and the descriptor supports it, then the enqueued 69operation is submitted at a priority equal to that of the calling 70process minus 71.Fa iocb->aio_reqprio . 72.Pp 73The 74.Fa iocb 75pointer may be subsequently used as an argument to --- 10 unchanged lines hidden (view full) --- 86.Sh RESTRICTIONS 87The Asynchronous I/O Control Block structure pointed to by 88.Fa iocb 89and the buffer that the 90.Fa iocb->aio_buf 91member of that structure references must remain valid until the 92operation has completed. For this reason, use of auto (stack) variables 93for these objects is discouraged. | 68is defined, and the descriptor supports it, then the enqueued 69operation is submitted at a priority equal to that of the calling 70process minus 71.Fa iocb->aio_reqprio . 72.Pp 73The 74.Fa iocb 75pointer may be subsequently used as an argument to --- 10 unchanged lines hidden (view full) --- 86.Sh RESTRICTIONS 87The Asynchronous I/O Control Block structure pointed to by 88.Fa iocb 89and the buffer that the 90.Fa iocb->aio_buf 91member of that structure references must remain valid until the 92operation has completed. For this reason, use of auto (stack) variables 93for these objects is discouraged. |
94.Pp | 94.Pp |
95The asynchronous I/O control buffer 96.Fa iocb 97should be zeroed before the 98.Fn aio_read 99call to avoid passing bogus context information to the kernel. 100.Pp 101Modifications of the Asynchronous I/O Control Block structure or the 102buffer contents after the request has been enqueued, but before the --- 90 unchanged lines hidden --- | 95The asynchronous I/O control buffer 96.Fa iocb 97should be zeroed before the 98.Fn aio_read 99call to avoid passing bogus context information to the kernel. 100.Pp 101Modifications of the Asynchronous I/O Control Block structure or the 102buffer contents after the request has been enqueued, but before the --- 90 unchanged lines hidden --- |