group::aio

Details

defineAIO_ALLDONE


defineAIO_CANCELED


defineAIO_NOTCANCELED


defineLIO_NOP


defineLIO_NOWAIT


defineLIO_READ


defineLIO_WAIT


defineLIO_WRITE


public intaio_cancel(int fildes,structaiocb* aiocbp)

This function is not supported this version.

Returns

-1 with errno set to ENOTSUP


public intaio_error(const structaiocb* aiocbp)

This function gets the error value for aiocbp.

Returns

The error value for the operation or zero for no errors:

  • EINPROGRESS: The operation is still in progress
  • Other interface specific error

public intaio_fsync(int op,structaiocb* aiocbp)

This function is not supported this version.

Returns

-1 with errno set to ENOTSUP


public intaio_read(structaiocb* aiocbp)

The function initiates an asynchronous read using the data specified by aiocbp.

Returns

0 on success or -1 with errno (see Errno) set to:

  • EIO: failed to start the transfer

public intaio_write(structaiocb* aiocbp)

The function initiates an asynchronous write using the data specified by aiocbp.

Returns

0 on success or -1 with errno (see Errno) set to:

  • EIO: failed to start the transfer

public ssize_taio_return(structaiocb* aiocbp)

This function returns the number of bytes read/written for the asynchronous operation.

Returns

The number of bytes transferred or -1 if there was an error (or if the operation is not yet complete). aio_error() can be used to determine the error.


public intsuspend(structaiocb*const list,int nent,const struct timespec * timeout,bool block_on_all)


public intaio_suspend(structaiocb*const list,int nent,const struct timespec * timeout)

This function will suspend the currently executing thread until an AIO operation in list completes or until the timeout value is surpassed. If timeout is NULL, it is ignored.

Returns

0 on success or -1 with errno (see Errno) set to:

  • EAGAIN: timeout was exceeded before any operations completed.
  • EINTR: the thread received a signal before any operations completed.

public intlio_listio(int mode,structaiocb*const list,int nent,struct sigevent * sig)

This function initiates a list of asynchronous transfers.

Asynchronous notification is not supported in this version. ENOTSUP is returned if an attempt is made to invoke an asynchronous notification.

This function is experimental in this version.

Returns

Zero on success or -1 with errno (see Errno) set to:

  • EINTR: the thread received an signal before completed all transactions
  • ENOTSUP: mode is LIO_NOWAIT and sig is not null or sigev_notify is not set to SIGEV_NONE
  • EINVAL: mode is not set to LIO_NOWAIT or LIO_WAIT


date: “2019-06-27” layout: post title: struct::aiocb katex: true

categories: struct

This is the data structure used when performing asynchronous reads or writes.

Methods

Details

public intaio_fildes


public off_taio_offset


public void *aio_buf


public size_taio_nbytes


public intaio_reqprio


public struct sigeventaio_sigevent


public intaio_lio_opcode


public devfs_async_tasync


X

Thanks for Coming!

Subscribe to news and updates