2012-10-25 17 views
5

मैं सी ++ में समवर्ती प्रोग्रामिंग में नौसिखिया हूं, मैं थ्रेड पूल पैटर्न के आधार पर एक सर्वर (लिनक्स बॉक्स पर) को कोड करना चाहता हूं जहां धागे को पढ़ने (और केवल पढ़ने) की आवश्यकता है एक साझा स्मृति आने वाले अनुरोधोंसी ++ थ्रेडपूल साझा पढ़ने के साथ केवल स्मृति

जवाब देने के लिए मैं बहुत उलझन में :( मुझे आश्चर्य है कि कुछ है, जब वे केवल पढ़ने के लिए स्मृति का उपयोग और कैसे हो सकता है स्मृति नक्शा फ़ाइल का उपयोग कर यह (करने के लिए धागे सिंक्रनाइज़ करने के लिए किया जाना चाहिए यदि कर रहा हूँ?)

+1

pthreads ... http: //www.cs.nmsu.edu/~jcook/Tools/pthreads/library.html...to धागे सिंक आप में शामिल विधि साझा पहुँचने के लिए उपयोग कर सकते हैं याद – subodh1989

उत्तर

1

यदि डेटा केवल पढ़ने के लिए है तो आपको पढ़ने के धागे को सिंक्रनाइज़ करने की आवश्यकता नहीं है, आप केवल कुछ करते हैं यदि कुछ लिख रहा हो। इसके अलावा, धागे अपने माता-पिता की मेमोरी स्पेस साझा करते हैं, इसलिए आपको साझा मेमोरी सेगमेंट या ऐसा कुछ भी करने की आवश्यकता नहीं है।

http://en.wikipedia.org/wiki/Thread_safety

1

मुझे सी ++ 11 मल्टीथ्रेडिंग के बारे में बहुत अच्छा लेख पता है - Read it । भाग 4 में आप साझा कंटेनर कार्यान्वयन और स्पष्टीकरण देखेंगे।

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