Possiedo Visual Studio Professional 2013 e sto eseguendo il debug di un'applicazione che utilizza async/attendi ampiamente. Ma quando mi fermo al breakpoint e apro la finestra Debug/Windows/Tasks, dice sempre "Nessuna attività da visualizzare".VS2013 Debug/Windows/Compiti: "Nessuna attività da visualizzare"
Ho effettuato due test, in uno riesco a vedere l'attività, in un altro non posso (eseguo il programma e lo interrompo). O posso spezzare l'attesa per la linea di lavoro.
using System;
using System.Threading;
using System.Threading.Tasks;
namespace TasksDebugWindowTest
{
class Program
{
static void Main(string[] args)
{
DoesNotWork();
}
static void Works()
{
Console.WriteLine("Starting");
var t = Task.Factory.StartNew(() =>
{
Task.Delay(100 * 1000).Wait();
Console.WriteLine("Task complete");
});
Console.WriteLine("Status: {0}", t.Status);
Thread.Sleep(500);
Console.WriteLine("Status: {0}", t.Status);
t.Wait();
Console.WriteLine("Done");
}
static void DoesNotWork()
{
Console.WriteLine("Starting");
var t = Task.Delay(100 * 1000);
t.Wait(); // **** Breakpoint here
Console.WriteLine("Task complete");
}
}
}
Qualcuno può spiegare perché posso vedere le attività in un caso, ma non in un altro?
Dovrebbe comparire, ho creato [un semplice programma di test] (https://dotnetfiddle.net/mVHNSq) e quando guardo la mia vista attività [si presenta] (http: //i.stack.imgur .com/I2oIv.png) (questa immagine è di VS2013 Premium). Puoi aggiungere un semplice programma di test che replica il problema e pubblicalo nella tua domanda [come una modifica] (http://stackoverflow.com/posts/26638563/edit)? Senza un esempio riproducibile, è probabile che la tua domanda venga chiusa. –
Grazie Scott, ha aggiunto il codice e riesce a farlo funzionare in un caso. –
Puoi pubblicare uno screenshot di esso non funziona? Il tuo "esempio non funziona" funziona bene sulla mia macchina se io [metti in pausa durante l'attesa] (http://i.stack.imgur.com/jZyKP.png) o se io [uso un punto di interruzione] (http://i.stack.imgur.com/mZK5i.png) –