Kur do të dështojë msgrcv?

Përmbajtje:

Kur do të dështojë msgrcv?
Kur do të dështojë msgrcv?
Anonim

Funksioni msgrcv do të dështojë nëse: [E2BIG] Vlera e mtext është më e madhe se msgsz dhe (msgflg & MSG_NOERROR) është 0. [EACCES]

A bllokon Msgrcv?

Funksionet msgsnd dhe msgrcv mund të kryhen si operacione bllokuese ose jobllokuese. Operacionet jo-bllokuese lejojnë transferimin asinkron të mesazheve -- procesi nuk pezullohet si rezultat i dërgimit ose marrjes së një mesazhi.

A e heq msgrcv mesazhin nga radha?

Thirrja e sistemit msgrcv heq një mesazh nga radha e specifikuar me msqid dhe e vendos atë në buferin e treguar nga msgp. Argumenti msgsz specifikon madhësinë maksimale në bajt për mtekstin e anëtarit të strukturës të treguar nga argumenti msgp.

Si funksionon msgrcv?

Funksioni msgrcv lexon një mesazh nga radha e mesazheve e specifikuar nga parametri msqid dhe e vendos atë në buferin e përcaktuar nga përdoruesi të treguar nga parametri msgp. Parametri msgp tregon një buffer të përcaktuar nga përdoruesi që duhet të përmbajë sa vijon: Një fushë e tipit long int që specifikon llojin e mesazhit.

Çfarë kthen msgrcv?

RETURN VALUE

Pas përfundimit të suksesshëm, msgrcv kthen një vlerë të barabartë me numrin e bajteve të vendosura në të vërtetë në mtekstin e buferit. Përndryshe, asnjë mesazh nuk do të merret, msgrcv do të kthehet (ssize_t)-1 dhe errno do të vendoset për të treguar gabimin.

Recommended: