Articles of c # 5.0

asynchronous no aplicativo de console em c #?

Eu tenho esse código simples: public static async Task SumTwoOperationsAsync() { var firstTask = GetOperationOneAsync(); var secondTask = GetOperationTwoAsync(); return await firstTask + await secondTask; } private async Task GetOperationOneAsync() { await Task.Delay(500); // Just to simulate an operation taking time return 10; } private async Task GetOperationTwoAsync() { await Task.Delay(100); // Just to simulate […]

Fire-and-forget com async vs. “old async delegate”

Eu estou tentando replace o meu antigo fogo e esquecer chamadas com uma nova syntax, esperando por mais simplicidade e parece estar me iludindo. Aqui está um exemplo class Program { static void DoIt(string entry) { Console.WriteLine(“Message: ” + entry); } static async void DoIt2(string entry) { await Task.Yield(); Console.WriteLine(“Message2: ” + entry); } static […]

Usando async / wait para várias tarefas

Estou usando um cliente API completamente asynchronous, ou seja, cada operação retorna Task ou Task , por exemplo: static async Task DoSomething(int siteId, int postId, IBlogClient client) { await client.DeletePost(siteId, postId); // call API client Console.WriteLine(“Deleted post {0}.”, siteId); } Usando os operadores async / wait do C # 5, qual é a maneira correta […]

Usando o async-await no .net 4

Atualmente, estou começando a criar um aplicativo que lucraria muito com o recurso async-await do C # 5. Mas não tenho certeza de qual versão do VS e do tempo de execução asynchronous usar. Analisando os charts de popularidade do sistema operacional, preciso dar suporte ao Windows XP por mais três anos. Parece que o […]

Como eu poderia executar um método Task asynchronous de forma síncrona?

Estou aprendendo sobre async / await e corri para uma situação onde eu preciso chamar um método asynchronous de forma síncrona. Como eu posso fazer isso? Método asynchronous: public async Task GetCustomers() { return await Service.GetCustomersAsync(); } Uso normal: public async void GetCustomers() { customerList = await GetCustomers(); } Eu tentei usar o seguinte: Task […]

Um exemplo de asynchronous / aguardar que causa um impasse

Eu me deparei com algumas práticas recomendadas para programação assíncrona usando as palavras-chave async / await do c # (eu sou novo no c # 5.0). Um dos conselhos dados foi o seguinte: Estabilidade: conheça seus contextos de synchronization … Alguns contextos de synchronization são não reentrantes e single-threaded. Isso significa que apenas uma unidade […]