msgrcv ফাংশন ব্যর্থ হবে যদি: [E2BIG] mtext-এর মান msgsz-এর থেকে বেশি এবং (msgflg & MSG_NOERROR) 0 হয়। [EACCES]
Msgrcv কি ব্লক করে?
msgsnd এবং msgrcv ফাংশনগুলি ব্লকিং বা অ-ব্লকিং অপারেশন হিসাবে সঞ্চালিত হতে পারে। অ-ব্লকিং ক্রিয়াকলাপগুলি অ্যাসিঙ্ক্রোনাস বার্তা স্থানান্তরের অনুমতি দেয় -- একটি বার্তা প্রেরণ বা গ্রহণের ফলে প্রক্রিয়াটি স্থগিত করা হয় না৷
msgrcv কি বার্তাটিকে সারি থেকে সরিয়ে দেয়?
msgrcv সিস্টেম কল msqid দ্বারা নির্দিষ্ট করা সারি থেকে একটি বার্তা সরিয়ে দেয় এবং এটিকে msgp দ্বারা নির্দেশিত বাফারে রাখে। আর্গুমেন্ট msgsz msgp আর্গুমেন্ট দ্বারা নির্দেশিত স্ট্রাকচারের মেম্বার mtext-এর জন্য বাইটে সর্বাধিক মাপ নির্দিষ্ট করে৷
msgrcv কিভাবে কাজ করে?
msgrcv ফাংশনটি msqid প্যারামিটার দ্বারা নির্দিষ্ট করা বার্তা সারি থেকে একটি বার্তা পড়ে এবং এটিকে msgp প্যারামিটার দ্বারা নির্দেশিত ব্যবহারকারী-সংজ্ঞায়িত বাফারে রাখে। msgp প্যারামিটার একটি ব্যবহারকারী-সংজ্ঞায়িত বাফারের দিকে নির্দেশ করে যাতে নিম্নলিখিতগুলি থাকতে হবে: টাইপের একটি ক্ষেত্র লং int যা বার্তার ধরন নির্দিষ্ট করে৷
msgrcv কি ফেরত দেয়?
রিটার্ন VALUE
সফল সমাপ্তির পরে, msgrcv বাফার mtext এ স্থাপন করা বাইটের সংখ্যার সমান একটি মান প্রদান করে। অন্যথায়, কোন বার্তা পাওয়া যাবে না, msgrcv ফিরে আসবে (ssize_t)-1 এবং ত্রুটি নির্দেশ করার জন্য errno সেট করা হবে।