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 204 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

Mobile 0 Comments

Live 03 – Como GERAR PDF em IONIC 5

Share this on WhatsAppFala Dev!Estarei realizando uma live no dia 30/04 as 21:10h onde ensinarei Como GERAR PDF em IONIC 5.Ha ideia dessa live surgiu a partir das dúvidas de

Sem categoria 3 Comments

[IONIC] – Gráficos com Angular2 Charts

Share this on WhatsAppOlá galera, tranquilo? Fiquei um pouco sumido com tutoriais pois, estou um pouco atarefado e agora estou também gravando uma série de vídeos no Youtube, caso queiram,

Mobile 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

1 Comment

Leave a Reply