एक बहु-क्रम परिदृश्य में, मैं इस तरह एक विधि है:क्या एक विधि जो राज्य के बदलाव की प्रतीक्षा करनी चाहिए?
bool WaitForChange(time_duration WaitTime) const;
इस विधि इंतजार कर रहा है या तो जब तक वस्तु की स्थिति बदल गया है और बाहर सच देता है, या जब तक टाइमआउट बार है (कैसे करते हैं आप का कहना है कि?) और झूठी वापसी करता है।
मेरा अंतर्ज्ञान यह है कि const
विधि के अवांछित दुष्प्रभावों के खिलाफ सुरक्षा करना है, इसलिए यह ठीक है। लेकिन फिर, कुछ उपयोगकर्ता सोच सकते हैं कि स्थिति बदल नहीं सकती थी, क्योंकि विधि const
घोषित की गई है। क्या वह उपयोगकर्ता बेवकूफ़ है, या क्या मुझे भ्रम से बचने के लिए विधि को गैर-const
बनाना चाहिए?
आप कैसे प्रतीक्षा करते हैं? हालत चर, या नींद मतदान? – nos
मैं प्रतीक्षा करने के लिए 'बूस्ट :: condition_variable' का उपयोग कर रहा हूं और लॉकिंग के लिए' boost :: mutex' का उपयोग कर रहा हूं। –