2010-07-31 5 views
57

संदेश भेजें और पोस्ट संदेश (शुद्ध विंडोज प्रोग्रामिंग के मामले में) और सी #, डब्ल्यूपीएफ और शुद्ध विंडोज प्रोग्रामिंग से संबंधित कैसे हैं?संदेश भेजें और पोस्ट संदेश के बीच क्या अंतर है और यह सी #, डब्ल्यूपीएफ और शुद्ध विंडोज प्रोग्रामिंग से कैसे संबंधित है?

मैं थ्रेडिंग और सभी संबंधित सामानों के लिए नया हूं इसलिए कृपया मुझे स्पष्ट quesiton के लिए क्षमा करें। मुझे थ्रेडिंग के बाहरी हिस्सों को खोदने की ज़रूरत है .. कृपया मुझे उन लिंक को बताएं जो मुझे मेरी अवधारणा को Win32 प्रोग्रामिंग से WPF तक बनाने में मदद करते हैं।

मुझे पोस्ट संदेश से Afx (एक नया धागा शुरू करने के लिए कॉल) से अंडरोक/शुरुआत प्रेषक को आमंत्रित करने के लिए अवरुद्ध करने की आवश्यकता है।

उत्तर

75

PostMessage, डॉक्स उद्धृत करने के लिए (उर्फ Win32 एपीआई में "शुद्ध खिड़कियों प्रोग्रामिंग",) asynchronous है, अर्थात्:

स्थानों (पोस्ट) संदेश धागा के साथ जुड़े कतार में एक संदेश निर्दिष्ट विंडो बनाई और संदेश को संसाधित करने के लिए थ्रेड के बिना प्रतीक्षा किए बिना लौटाता है।

धागे से जुड़े संदेश कतार में संदेश पोस्ट करने के लिए, पोस्ट थ्रेड मैसेज फ़ंक्शन का उपयोग करें।

SendMessage, synchronous है कि है, फिर से उद्धृत:

एक खिड़की या खिड़कियों के लिए निर्दिष्ट संदेश भेजता है। SendMessage फ़ंक्शन निर्दिष्ट विंडो के लिए विंडो प्रक्रिया पर कॉल करता है और विंडो प्रक्रिया के संदेश संसाधित होने तक वापस नहीं आता है।

एक संदेश भेजने और तुरंत लौटने के लिए, SendMessageCallback या SendNotifyMessage समारोह का उपयोग करें। संदेश को थ्रेड के संदेश कतार पर संदेश पोस्ट करने और तुरंत लौटने के लिए, पोस्टमेसेज या पोस्ट थ्रेड मैसेज फ़ंक्शन का उपयोग करें।

इन दो कार्यों और उनके उपयोग पर एक अच्छा ट्यूटोरियल here है।

डब्ल्यूपीएफ के कनेक्शन पर this SO question में चर्चा की गई है।

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