C# में async और await का सही और कब उपयोग करें? उदाहरणों के साथ समझें
सभी को नमस्ते! मैं एक शुरुआती C# डेवलपर हूँ, और मैं async/await को समझ नहीं पा रहा हूँ। मैंने कई लेख पढ़े, लेकिन व्यवहार में मैं अभी भी भ्रमित हूँ।
यहाँ एक सरल उदाहरण है। मेरे पास एक method है जो वेब सर्वर से डेटा लोड करता है और उसे प्रोसेस करता है। मैंने सुना है कि लंबी operations (जैसे फ़ाइल डाउनलोड करना या DB query) के लिए async का उपयोग करना चाहिए ताकि UI ब्लॉक न हो। लेकिन मैंने यह कोड लिखा, और यह अभी भी हैंग होता है:
```csharp
public async Task LoadDataAsync()
{
using (HttpClient client = new HttpClient())
{
// मैंने सोचा कि await जादू करेगा
var response = await client.GetStringAsync("https://example.com/data");
// लेकिन UI अभी भी लोडिंग के दौरान हैंग होता है!
return ProcessData(response);
}
}
private void Button_Click(object sender, RoutedEventArgs e)
{
var result = LoadDataAsync().Result; // यहाँ सब कुछ हैंग होता है
textBox.Text = result;
}
```
मैंने कई समस्याएँ देखीं:
1. अगर मैं `async` method को syn