पर लिनक्स सर्वेक्षण ईवेंट का कारण दो लिनक्स प्रक्रियाएं उसी/dev/shm/साझा स्मृति फ़ाइल को खोलती हैं और mmap और सामान्य स्मृति के रूप में इसका उपयोग करती हैं। प्रश्न: दूसरी प्रक्रिया को "जागृत" करने के लिए एक प्रक्रिया के लिए सबसे आसान और सबसे अच्छा तरीका क्या है यह सूचित करने के लिए कि उसे स्मृति में देखना चाहिए? उदाहरण के लिए, क्या कोई प्रक्रिया अन्य प्रक्रिया के फ़ाइल डिस्क्रिप्टर के लिए एक मतदान() ईवेंट का कारण बन सकती है? समाधान को पोर्टेबल होने की आवश्यकता नहीं है लेकिन मैं इसे सरल बनाना चाहता हूं।साझा स्मृति फ़ाइल
7
A
उत्तर
2
यही कारण है कि पॉज़िक्स में हालत चर हैं।
साझा किए गए मेमोरी क्षेत्र में साझा किए गए POSIX स्थिति चर और उसके संबंधित mutex को परिभाषित करें।
फिर एक थ्रेड कंडीशन वैरिएबल पर प्रतीक्षा करें और अन्य सिग्नल वेरिएबल इवेंट सिग्नल करें जब यह अन्य धागे को स्मृति में देखना चाहता है।
हालत चर पर वेब पर बहुत सारी सामग्री है। यहां एक बहुत अच्छा छोटा है: https://computing.llnl.gov/tutorials/pthreads/#ConditionVariables
0
आप इसे हल करने के लिए एक सेमफोर (पीओएसआईक्स नाम सेमाफोर) का उपयोग करने पर विचार कर सकते हैं।
एक सरल उदाहरण, साझा स्मृति का उपयोग और POSIX सेमाफोर कड़ी में है (उदाहरण के लिए यह सिस्टम वी में है, लेकिन आप भी POSIX के साथ उपयोग कर सकते हैं में), How can 2 processes talk to each other without pipe()?
संबंधित मुद्दे
- 1. सी ++ साझा स्मृति रिसाव, साझा स्मृति को कैसे साफ़ करें?
- 2. साझा स्मृति परमाणु पहुंच
- 3. साझा-स्मृति स्थिरता
- 4. postgresql साझा स्मृति सेटिंग्स
- 5. ABAP: साझा स्मृति तुल्यकालन
- 6. CUDA साझा स्मृति
- 7. php साझा स्मृति सभी 0s
- 8. पायथन प्रक्रियाओं के बीच साझा स्मृति
- 9. जीपीयू 2 डी साझा स्मृति गतिशील आवंटन
- 10. साझा स्मृति में पायथन वस्तुओं को रखने
- 11. साझा किया गया फ़ाइल फ़ाइल
- 12. सी ++ साझा ऑब्जेक्ट फ़ाइल
- 13. सी ++ थ्रेडपूल साझा पढ़ने के साथ केवल स्मृति
- 14. प्रदर्शन स्मृति की विशेषताओं फ़ाइल
- 15. स्मृति में फ़ाइल कैसे खोलें?
- 16. CUDA: एक बड़े-आश 2 डी सरणी पर साझा स्मृति
- 17. पूरी तरह से प्रबंधित साझा स्मृति .NET कार्यान्वयन?
- 18. सभी PHP प्रक्रियाओं के बीच साझा चर/स्मृति
- 19. एक साझा स्मृति के लिए एमपीआई बनाम ओपनएमपी
- 20. साझा स्मृति को .NET में कैसे कार्यान्वित करें?
- 21. सी में साझा स्मृति (shmget/shmat) को कैसे संशोधित करें?
- 22. ओआरए -27101: साझा स्मृति क्षेत्र मौजूद नहीं है
- 23. इंतजार और सी में सूचित/C++ साझा स्मृति
- 24. क्या स्थानीय मेमोरी CUDA में साझा स्मृति से धीमी है?
- 25. आईट्रीम बनाम स्मृति एक फ़ाइल मैपिंग?
- 26. PHP में फ़ाइल डाउनलोड, स्मृति सीमा समस्या?
- 27. डेल्फी - उल्लंघन उद्घाटन टेक्स्ट फ़ाइल साझा करना
- 28. Log4j एक साझा लॉग फ़ाइल में लॉगिंग
- 29. साझा नहीं खोल सकता वस्तु फ़ाइल
- 30. रेल के लिए साझा फ़ाइल संग्रहण