বিএসডি সকেট প্রোগ্রামিংয়ের প্রসঙ্গে প্রতিটি উদাহরণ এবং আলোচনার মধ্যে আমি মনে করি যে নন-ব্লকিং আই / ও মোডে কোনও ফাইল বর্ণনাকারী সেট করার প্রস্তাবিত উপায়টি O_NONBLOCK
পতাকা ব্যবহার করে fcntl()
, যেমন
int flags = fcntl(fd, F_GETFL, 0);
fcntl(fd, F_SETFL, flags | O_NONBLOCK);
আমি দশ বছরেরও বেশি সময় ধরে ইউএনআইএক্স-এ নেটওয়ার্ক প্রোগ্রামিং করছি, এবং এটি FIONBIO ioctl()
করার জন্য সর্বদা কলটি ব্যবহার করেছি :
int opt = 1;
ioctl(fd, FIONBIO, &opt);
আসলেই কেন এতটা চিন্তাভাবনা করেনি। সবেমাত্র সেভাবে শিখেছি।
একজনের বা অন্যের সম্ভাব্য নিজ নিজ যোগ্যতার বিষয়ে কারও কি কোনও মন্তব্য আছে? আমি কল্পনা করি যে পোর্টেবিলিটি লোকস কিছুটা পৃথক হয়েছে, তবে ioctl_list(2)
স্বতন্ত্র ioctl
পদ্ধতির সেই দিকটি কী পরিমাণে কথা বলবে না তা জানি না ।