Kapan msgrcv gagal?

Kapan msgrcv gagal?
Kapan msgrcv gagal?
Anonim

Fungsi msgrcv akan gagal jika: [E2BIG] Nilai mtext lebih besar dari msgsz dan (msgflg & MSG_NOERROR) adalah 0. [EACCES]

Apakah Msgrcv memblokir?

Fungsi msgsnd dan msgrcv dapat dilakukan sebagai operasi pemblokiran atau non-pemblokiran. Operasi non-pemblokiran memungkinkan transfer pesan asinkron -- proses tidak dihentikan karena mengirim atau menerima pesan.

Apakah msgrcv menghapus pesan dari antrian?

Panggilan sistem msgrcv menghapus pesan dari antrian yang ditentukan oleh msqid dan menempatkannya di buffer yang ditunjuk oleh msgp. Argumen msgsz menentukan ukuran maksimum dalam byte untuk mtext anggota struktur yang ditunjuk oleh argumen msgp.

Bagaimana cara kerja msgrcv?

Fungsi msgrcv membaca pesan dari antrian pesan yang ditentukan oleh parameter msqid dan menempatkannya di buffer yang ditentukan pengguna yang ditunjukkan oleh parameter msgp. Parameter msgp menunjuk ke buffer yang ditentukan pengguna yang harus berisi berikut ini: Bidang bertipe long int yang menentukan tipe pesan.

Apa yang dikembalikan msgrcv?

RETURN VALUE

Setelah berhasil diselesaikan, msgrcv mengembalikan nilai yang sama dengan jumlah byte yang sebenarnya ditempatkan ke dalam buffer mtext. Jika tidak, tidak ada pesan yang akan diterima, msgrcv akan kembali (ssize_t)-1 dan errno akan diatur untuk menunjukkan kesalahan.

Direkomendasikan: