अपने iPhone एप्लिकेशन में मैं कई स्थानों पर जहां मैं एककैसे जांचें कि कोई प्रदर्शनकर्ता है: निष्पादित करने का इंतजार?
[object performSelector: withObject: afterDelay:]
कॉल कर सकते हैं मिल गया। सभी एक ही विधि के लिए नेतृत्व करते हैं। अब, उस विधि में मैं केवल कुछ नवीनतम कोड पर कुछ कोड निष्पादित करना चाहता हूं। अगर यह पहला था, तो मैं बस [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(thisMethod) object:nil]
कर सकता था और सुनिश्चित कर सकता हूं कि इसे एक बार बुलाया जाए।
लेकिन, क्या यह बताने का कोई तरीका है कि क्या कोई अन्य विधि कॉल निष्पादित होने की प्रतीक्षा कर रही है?
मैं इस कक्षा में एक काउंटर का उपयोग कर सकता हूं कि जब भी मैं देरी के बाद इसे निष्पादित करता हूं तो मैं प्रत्येक बार वृद्धि करता हूं, फिर प्रत्येक कॉल की शुरुआत में इसे कम करता हूं और यदि यह काउंटर शून्य हो जाता है तो कोड निष्पादित करता है। लेकिन मुझे आश्चर्य है कि यह सबसे अच्छा/स्वीकार्य दृष्टिकोण है ...
क्या होगा यदि आप पहले निर्धारित समय को संशोधित किए बिना लगातार कॉल को अनदेखा करना चाहते हैं? उदाहरण के लिए तालिका दृश्य को अपडेट करने के लिए कॉल करें। – Rivera