मेरे पास नीचे जैसा कार्य है।टास्क.वेट और जारी रखें WITH
var task = Task<string>.Factory.StartNew(() => longrunningmethod()
.ContinueWith(a =>
longrunningmethodcompleted((Task<string>)a,
TaskScheduler.FromCurrentSynchronizationContext())));
task.Wait();
मेरा कार्य longrunningmethod को कॉल करेगा और इसे पूरा करने के बाद पूर्ण विधि कॉल करेगा। मेरे longrunningmethod के अंदर मैं Thread.Sleep(30000)
में देरी कर रहा हूं। जब मैं Task.wait सिस्टम का उपयोग करता हूं और यह longrunningmethodcompleted विधि को कॉल नहीं कर रहा है। अगर मैं टास्क का उपयोग नहीं करता हूं। सब कुछ अच्छा बहता है।
मुझे एक डेडलॉक की तरह लगता है, क्या आप इसे एक थ्रेडेड वातावरण में कर रहे हैं? मैंने इसे विंडोज फोन विकास में पहले देखा है। ([संबंधित] (http://stackoverflow.com/questions/8277291/continuation-tasks-hanging-when-using-limitedconcurrencyleveltaskscheduler)) –