me gustaría utilizar el marco de tareas en .NET para programar algo para ejecutarse en un subproceso diferente a continuación, cuando se hace continuar con una operación para actualizar la interfaz de usuario en el subproceso de interfaz de usuario. (No he jugado con él mucho todavía, así que no es muy familiar para mí.)C# Task.ContinueWith emite
Aquí está el código:
Task<List<NewsItem>> fetchTask = new Task<List<NewsItem>>(() =>
{
List<NewsItem> items = Rss.FetchNewsItems(feed);
return items;
}).ContinueWith(x => UpdateNewsItems(x.Result),CancellationToken.None,TaskContinuationOptions.None,scheduler);
private void UpdateNewsItems(List<NewsItem> items)
{
...
}
No se puede convertir implícitamente el tipo 'System.Threading.Tasks.Task' a 'System.Threading.Tasks.Task < System.Collections.Generic.List <Spark.Models.NewsItem> >'. existe una conversión explícita
pensé que si uso la firma genérica de Lista < elemento Novedades > en la tarea que el Task.Result regresaría ese tipo para que pudiera pasar a mi método ... qué estoy haciendo mal aquí?
asíncrono/aguardan puede resolver este problema fácilmente. –
Sí, no estaba fuera cuando escribí esto. – Kelly