Fujiy Util 1.1.0

08/22/2014 20:56:24 By Felipe Pessoto

Publiquei uma nova versão do Fujiy Util.

Um detalhe que eu não tinha percebido até alguns dias, o que acontece com código assíncrono já que inicialmente ele não dispara uma Exception?

O problema não é especifico na biblioteca, mas em qualquer código que você use algum tipo de Cache onde faça o cache de uma Task, o que vai ser cada vez mais comum, ainda mais considerando que as chamadas que normalmente usam cache, são assíncronas.

O que acontece é que ao chamas o método a ser cacheado, ele retorna com sucesso uma Task, em Status pendente. Posteriormente ela será "awaited" e possivelmente ser cancelada ou falhar, mas nesse momentoa Task já estava no cache. Então agora antes de retornar qualquer item do tipo Task, verifico se não está com o Status Faulted ou Canceled.

https://www.nuget.org/packages/Fujiy.Util/

Building Async Coordination Primitives

02/13/2012 22:37:48 By Felipe Pessoto

Ontem o Stephen Toub("o cara" quando se fala sobre async) postou no blog Parallel Programming with .NET uma série de posts sobre como criar classes equivalestes aos "coordination primitives" mas Async. Ele usa como exemplo o ManualResetEvent, AutoResetEvent, entre outros, vale a pena conferir: