Avatar ·

Swift में dispatch_after का एनालॉग: GCD के माध्यम से विलंब से कोड कैसे निष्पादित करें?

सभी को नमस्ते! मैं Swift में नया हूँ और पहले Objective-C में लिखता था। वहाँ कोड निष्पादन में विलंब के लिए मैं dispatch_after का उपयोग करता था, और सब कुछ सरल था: ```objc dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ NSLog(@"2 सेकंड बीत गए"); }); ``` अब मैं Swift में स्विच कर रहा हूँ, लेकिन मुझे सीधा एनालॉग नहीं मिल रहा। मैंने गूगल किया कि Swift में dispatch_after अब नहीं है, और कुछ और उपयोग करना होगा। मैंने इस तरह लिखने की कोशिश की: ```swift DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) { print("2 सेकंड बीत गए") } ``` यह काम करता है, लेकिन मुझे यकीन नहीं है कि यह सही है। विशेष रूप से `deadline: .now() + 2.0` का सिंटैक्स मुझे भ्रमित करता है — मैं समझ नहीं पा रहा हूँ कि यह कैसे काम करता है। उदाहरण के लिए, अगर मुझे 0.5 सेकंड के बाद कोड निष्पादित करना है, तो क्या मैं बस `.now() + 0.5` लिखूँ? या बैकग्राउंड थ्रेड्स पर विलंब के साथ कोई समस्या है? मैं यह भी पूछना चाहता हूँ: शेड्यूल किए गए कार्य को सही तरीके से कैसे रद्द करें? Objective-C में मैं dispatch_block_t को सेव कर सकता था और फिर