मैं एसिंक/प्रतीक्षा का अच्छा समझ पाने की कोशिश कर रहा हूं और मैं कुछ भ्रम को साफ़ करना चाहता हूं। किसी कृपया समझा सकते हैं कि निम्नलिखित के लिए निष्पादन के मामले में अंतर हो जाएगा:Async/Await निष्पादन अंतर
// version 1
public Task Copy(string source, string destination) {
return Task.Run(() => File.Copy(source, destination));
}
public async Task Test() {
await Copy("test", "test2");
// do other stuff
}
और:
// version 2
public async Task Copy(string source, string destination) {
await Task.Run(() => File.Copy(source, destination));
}
public async Task Test() {
await Copy("test", "test2");
// ...
}
वे एक ही कोड में जिसके परिणामस्वरूप कर रहे हैं और कारण है कि मैं एक दूसरे के ऊपर लिखना चाहते हैं?
संभावित रूप से एक डुप्लिकेट: http://stackoverflow.com/q/21033150/1768303 – Noseratio
@ नोसेरेटियो हाँ, यह वास्तव में भी है, एरिक्स का जवाब एक "आंख खोलने वाला" है, जो डुप्ली के लिए खेद है, कुछ भी नहीं मिला (वास्तव में यह सुनिश्चित नहीं है कि खोज कैसे बनाएं: पी) –
@ डिमिटार डिमिट्रोव, आईएमओ, राज्य मशीन के ओवरहेड के अलावा, सबसे प्रमुख अंतर [अपवाद प्रचार तर्क] (http://stackoverflow.com/a/21082631/1768303) है । – Noseratio