Kada msgrcv neće uspjeti?

Sadržaj:

Kada msgrcv neće uspjeti?
Kada msgrcv neće uspjeti?
Anonim

Funkcija msgrcv neće uspjeti ako: [E2BIG] Vrijednost mtext je veća od msgsz i (msgflg & MSG_NOERROR) je 0. [EACCES]

Da li Msgrcv blokira?

Funkcije msgsnd i msgrcv se mogu izvršiti kao blokirajuće ili neblokirajuće operacije. Neblokirajuće operacije omogućavaju asinhroni prijenos poruka -- proces se ne obustavlja kao rezultat slanja ili primanja poruke.

Da li msgrcv uklanja poruku iz reda čekanja?

msgrcv sistemski poziv uklanja poruku iz reda koje je specificirao msqid i stavlja je u bafer na koji ukazuje msgp. Argument msgsz specificira maksimalnu veličinu u bajtovima za člana mtext strukture na koju ukazuje argument msgp.

Kako msgrcv radi?

Funkcija msgrcv čita poruku iz reda poruka specificiranog parametrom msqid i postavlja je u korisnički definirani bafer na koji ukazuje parametar msgp. Parametar msgp ukazuje na korisnički definirani bafer koji mora sadržavati sljedeće: Polje tipa long int koje specificira tip poruke.

Šta vraća msgrcv?

POVRATNA VRIJEDNOST

Po uspješnom završetku, msgrcv vraća vrijednost jednaku broju bajtova koji su stvarno smješteni u bafer mtext. U suprotnom, poruka neće biti primljena, msgrcv će vratiti (size_t)-1 i errno će biti postavljen da ukaže na grešku.

Preporučuje se: