Paralelismo com C#

Paralelismo com C#

Aprendar trabalhar com processamento paralelo em C#.

E ai pessoal beleza, atualmente ando meio afastado do blog, mas sempre que pintar um tempinho eu prometo trazer novos artigos para vocês.

Hoje resolvi escrever um post sobre processamento paralelo.

Irei criar um simples programa onde eu consigo executar um mesmo trecho de código em mais de um núcleo do processador de forma paralela.

Bom então vamos por a mão na massa!

Bom para isso criei um projeto Application Console como podemos ver abaixo:

 

Explicando o código acima:

Temos 2 métodos principais o ProcessamentoNormal e ProcessamentoParalelo.

Cada método executa um loop de forma diferente, no caso do ProcessamentoNormal é feito um For tradicional exibindo uma quantidade X de linhas na tela.

Já o método ProcessamentoParalelo executa um For de uma forma um pouco diferente, como podemos ver abaixo ele usa a classe Parallel.

 

Abaixo podemos conferir o resultado do processamento em mais de um núcleo.

 

Repare que o processamento da CPU chega a 100%, com isso temos que ter cuidado ao utilizar esse tipo de recurso.

Executar algo em paralelo sem ter controle de número de threads abertas podem ocasionar vários tipos de problemas, pode por exemplo estourar o pool de conexão do banco de dados, ou ter problemas com acesso a um arquivo no disco e etc.

Outro ponto que devemos levar em consideração é o tipo de coisa que vai ser processado, pois se for algo muito pesado você pode ter um ganho de performance nesse tipo de processamento, mas no caso do nosso exemplo a execução em paralelo como só exibe linhas na tela, pode ser mais demorado do que um simples for normal, pois iniciar esse processo em paralelo é bem custoso.

Bom espero que tenham curtido o post.

Até a próxima!

Previous Trabalhando com classes Thread Safe (Wait on Lock) no C#
Next Validando dados com a classe ArgumentValidator no C#

About author

Paulo Rogério
Paulo Rogério 144 posts

Sou apaixonado por tecnologia e adoro criar aplicações desktop, web e mobile. Adoro aprender e compartilhar conhecimento, meu hobby é ajudar as pessoas.

You might also like

Sem categoria 0 Comments

Xamarin Forms – Data Binding entre controles

Share this on WhatsAppAprenda fazer Data Binding entre seus componentes de sua View no Xamarin Forms Fala galera, beleza? Como alguns de vocês já sabem, depois de passar um tempo

Xamarin – Como consumir uma api local que roda no IIS Express no emulador

Share this on WhatsAppAprenda a consumir uma api local direto do emulador Hoje venho trazer uma dica bem interessante para vocês, irei explicar como podemos rodar 2 projetos ao mesmo

Sem categoria 0 Comments

Curso grátis – Dominando Postman em 10 passos

Share this on WhatsAppPessoal, gostaria de compartilhar com vocês o meu mais novo curso chamado Dominando Postman em 10 passos. Postman é uma ótima ferramenta para testar, monitorar  e gerar

0 Comments

No Comments Yet!

You can be first to comment this post!

Leave a Reply