मेरे पास कुछ सामग्री के साथ UITableView
है, जो असीमित तरीके से लोड किया गया है। जब उपयोगकर्ता डिवाइस को घुमाता है तो मुझे [tableView reloadData]
-willRotateToInterfaceOrientation
विधि में बनाने की आवश्यकता है। ReloadData मेरे मामले में एसिंक्रोनस काम करता है।मेन थ्रेड को कुछ एसिंक कार्रवाई करने तक प्रतीक्षा कैसे करें?
मैं समझता हूं कि पुनः लोडडेटा मुख्य धागे में काम करता है, लेकिन यह सेलफॉररोएट इंडेक्सपैथ को सक्रिय करता है, जो मेरे मामले में एसिंक काम करता है।
तो प्रश्न यह है कि UITableView's reloadData
समाप्त होने तक मुख्य धागा प्रतीक्षा कैसे करें।
मैं समझता हूं कि पुनः लोडडेटा को मुख्य धागे में बुलाया जाता है। लेकिन realodData CellForRowAtIndexPath को कॉल करता है ... और इस विधि को कुछ डेटा async लोड करने की आवश्यकता है। –
मैं देखता हूं, इसलिए आप पुनः लोड करने के लिए पुनः लोड करने की प्रतीक्षा नहीं कर रहे हैं, लेकिन असीमित कार्य जो पुनः लोड करने के लिए बंद हो जाते हैं। क्या आप इसे प्रतिबिंबित करने के लिए अपने प्रश्न को संशोधित कर सकते हैं? NSRunLoop अभी भी वही है जो आप चाहते हैं, हालांकि मुझे समझ में नहीं आ रहा है कि क्यों आप एसिंक्रोनस डेटा लोड करते समय मुख्य थ्रेड बंधक को पकड़ना चाहते हैं। – NSProgrammer
पुनः लोड करने की प्रतीक्षा करने के लिए मुख्य थ्रेड की आवश्यकता है, क्योंकि यह रोटेशन एनीमेशन सुखद बना देगा। –