2009-05-13 11 views
7

http://linux.die.net/man/2/select पर, बीयूजीएस अनुभाग के तहत, यह उल्लेख किया गया है कि चयन प्रणाली कॉल कभी-कभी एफडी तैयार हो सकती है और बाद में पढ़ने वाली कॉल 0 वापस आ जाएगी। पाठ एक ऐसे उदाहरण का वर्णन करता है (गलत चेकसम) लेकिन मुझे लगता है कि अन्य कारण भी होंगे (अन्यथा वे इसे तय करेंगे)।चुनिंदा सिस्टम कॉल के लिए नकली तैयारी अधिसूचना

किसी भी विचार से एफडी को तैयार करने के लिए चयन करने के लिए अन्य कारण क्या हो सकते हैं।

और क्या यह अन्य ओएसई पर भी लागू होता है। मैं वर्तमान में लिनक्स के बारे में पूछ रहा हूं। ऊपर के लिंक के लिए

प्रासंगिक अनुभाग: लिनक्स के तहत

का चयन करें() के रूप में " पढ़ने के लिए तैयार" एक सॉकेट फ़ाइल वर्णनकर्ता, रिपोर्ट कर सकते हैं, जबकि फिर भी एक बाद पढ़ने के लिए ब्लॉक। यह के लिए हो सकता है उदाहरण तब होता है जब डेटा पर पहुंच गया है लेकिन परीक्षा में चेकसम है और इसे छोड़ दिया गया है। अन्य परिस्थितियां हो सकती हैं जिसमें फ़ाइल डिस्क्रिप्टर को तैयार के रूप में सूचित किया गया है। इस प्रकार O_NONBLOCK सॉकेट पर उपयोग करना सुरक्षित हो सकता है जो ब्लॉक नहीं होना चाहिए।

उत्तर

1

यह बिल्कुल एक जवाब नहीं है, लेकिन एपोल पर देखकर, इन समस्याओं को हल करने के लिए प्रतीत होता है।

और यदि मैं netdev में this message पर भरोसा कर सकता हूं, तो कम से कम उन्होंने इसे मतदान() में ठीक करने की कोशिश की और() अन्य चीज़ों को तोड़ने का प्रयास किया।

इस प्रकार, यह बग निकट भविष्य में प्रासंगिक प्रतीत नहीं होता है।

संबंधित मुद्दे