Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       aio_write - scriere asincronă

BIBLIOTECA

       Biblioteca de timp real (librt, -lrt)

SINOPSIS

       #include <aio.h>

       int aio_write(struct aiocb *aiocbp);

DESCRIERE

       Funcția  aio_write()  pune  în  coadă  cererea  de  intrare/ieșire descrisă de memoria tampon indicată de
       aiocbp.  Această funcție este analogul asincron al funcției write(2).  Argumentele apelului

           write(fd, buf, count)

       corespund (în ordine) câmpurilor aio_fildes, aio_buf și aio_nbytes din structura indicată de  aiocbp.  (A
       se vedea aio(7) pentru o descriere a structurii aiocb).

       Dacă  O_APPEND  nu  este definită, datele sunt scrise începând de la poziția absolută aiocbp->aio_offset,
       indiferent de poziția indicatorului în fișier.  Dacă  O_APPEND  este  definită,  datele  sunt  scrise  la
       sfârșitul fișierului în aceeași ordine în care sunt efectuate apelurile aio_write().  După apel, valoarea
       decalajului de fișier este nespecificată.

       „Asincron”  înseamnă  că acest apel returnează imediat ce cererea a fost pusă în coadă; scrierea poate fi
       sau nu finalizată atunci când se returnează apelul. Se poate  testa  finalizarea  folosind  aio_error(3).
       Starea  de  returnare a unei operații In/Ieș finalizate poate fi obținută prin aio_return(3). Notificarea
       asincronă  a  finalizării  de  In/Ieș   poate   fi   obținută   prin   configurarea   corespunzătoare   a
       aiocbp->aio_sigevent; a se vedea sigevent(3type) pentru detalii.

       Dacă  _POSIX_PRIORITIZED_IO  este  definită,  iar  acest fișier o acceptă, atunci operația asincronă este
       transmisă cu o prioritate egală cu cea a procesului apelant minus aiocbp->aio_reqprio.

       Câmpul aiocbp->aio_lio_opcode este ignorat.

       Nu se scriu date într-un fișier normal dincolo de decalajul maxim al acestuia.

VALOAREA RETURNATĂ

       În caz de succes, se returnează 0.  În caz de eroare, cererea nu este pusă în coadă,  se  returnează  -1,
       iar  errno  este  configurată  pentru a indica eroarea. În cazul în care o eroare este detectată abia mai
       târziu, aceasta va fi raportată prin intermediul aio_return(3) (returnează  starea  -1)  și  aio_error(3)
       (starea de eroare, oricare ar fi fost cea obținută în errno, cum ar fi EBADF).

ERORI-IEȘIRE

       EAGAIN Resurse insuficiente.

       EBADF  aio_fildes nu este un descriptor de fișier valid deschis pentru scriere.

       EFBIG  Fișierul  este  un  fișier obișnuit, dorim să scriem cel puțin un octet, dar poziția de pornire se
              află la sau dincolo de decalajul maxim pentru acest fișier.

       EINVAL Unul sau mai multe dintre aio_offset, aio_reqprio, aio_nbytes nu sunt valide.

       ENOSYS aio_write() nu este implementată.

ATRIBUTE

       Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
       ┌─────────────────────────────────────────────────────────────────────────┬───────────────────┬─────────┐
       │ InterfațăAtributValoare │
       ├─────────────────────────────────────────────────────────────────────────┼───────────────────┼─────────┤
       │ aio_write()                                                             │ Siguranța firelor │ MT-Safe │
       └─────────────────────────────────────────────────────────────────────────┴───────────────────┴─────────┘

STANDARDE

       POSIX.1-2008.

ISTORIC

       glibc 2.1.  POSIX.1-2001.

NOTE

       Este o idee bună să se pună la zero blocul de control înainte de utilizare.  Blocul de control nu trebuie
       să fie modificat în timp ce operația de scriere este în desfășurare.  Zona din  memoria  tampon  care  se
       scrie  nu  trebuie să fie accesată în timpul operațiunii, altfel pot apărea rezultate nedefinite.  Zonele
       de memorie implicate trebuie să rămână valide.

       Operațiile de In/Ieș simultane care specifică aceeași structură aiocb produc rezultate nedefinite.

CONSULTAȚI ȘI

       aio_cancel(3), aio_error(3), aio_fsync(3),  aio_read(3),  aio_return(3),  aio_suspend(3),  lio_listio(3),
       aio(7)

TRADUCERE

       Traducerea    în   limba   română   a   acestui   manual   a   fost   făcută   de   Remus-Gabriel   Chelu
       <remusgabriel.chelu@disroot.org>

       Această traducere este  documentație  gratuită;  citiți  Licența publică generală GNU Versiunea 3  sau  o
       versiune   ulterioară   cu  privire  la  condiții  privind  drepturile  de  autor.   NU  se  asumă  NICIO
       RESPONSABILITATE.

       Dacă găsiți erori în traducerea acestui manual, vă rugăm să  trimiteți  un  e-mail  la  translation-team-
       ro@lists.sourceforge.net.

Pagini de manual de Linux 6.9.1                    2 mai 2024                                       aio_write(3)