CLRium # 6: Simultaneidade e Paralelismo. Dois dias: do processador ao assíncrono / aguardar


Muito em breve, de 29 a 30 de novembro em São Petersburgo e de 6 a 7 de dezembro em Moscou , lançaremos o sexto seminário .NET. No âmbito do seminário, estamos em pleno andamento estudando questões de multithreading, que são realmente muito, muito complexas. O programa muda um pouco, mas acaba sendo muito duro para você e emocionante para nós. Expandi a descrição do nível do sistema operacional para três slots: agora você pode aprender lá:


  • Quantum de tempo, sua duração, a escolha de sua duração, alterando as configurações do sistema para selecionar a duração do quantum de tempo
  • Aumentar dinamicamente as prioridades dos fluxos e comprimentos quânticos, dependendo das diferentes condições: desde o sinal de que a janela está em primeiro plano até a liberação de bloqueios
  • Desenvolvendo seu próprio planejador de encadeamentos UMS

e muito mais Haverá muito café.


Onde será realizado


Em São Petersburgo, o seminário mudou de local e será realizado quase no centro da cidade: o espaço artístico dos tecelões. Alugamos todo o andar do prédio para que você possa acomodar confortavelmente, jantar sem sair do prédio e se divertir - durante os intervalos. Porque este é um espaço artístico, há muitas coisas interessantes além do próprio seminário.



Em Moscou, o seminário será realizado no tradicional Salute Hotel. A escolha é simples: o local é bem comprovado.



Algumas palavras sobre o programa do seminário


Programa do primeiro dia


  • Começaremos com a camada do sistema operacional. 6 tipos de processos, threads, mencionamos fibras (e explicamos por que elas não estão no .NET). Dois grandes relatórios que decomporão tudo o que está no sistema operacional;
  • Após o sistema operacional, falaremos sobre mecânica de CLR. Possui muitos mecanismos com base nos quais muitas classes de BCL funcionam;
  • Em seguida, você irá jantar para definir a primeira camada de informações ;
  • Após o almoço, ocupamos a camada BCL com muita força. Aqui estão as primitivas de sincronização. E a complexidade e importância da complexidade de algoritmos e contextos de sincronização. Em geral, dois relatórios sólidos. Já nesta fase, você sentirá que seus investimentos serão recompensados ​​pelo menos no projeto atual e no futuro - em qualquer entrevista;
  • O terceiro tópico do primeiro dia são algoritmos sem bloqueio. Esta é uma parte essencial do nosso conhecimento multithreading. Algoritmos que funcionam sem bloqueios. E, na minha humilde opinião, é melhor não ensiná-los . Eles precisam entender como eles funcionam. É isso que faremos: primeiro, descobriremos como colocar o TK por conta própria para escolher um algoritmo com base nos requisitos. A seguir, analisaremos como os dois algoritmos funcionam e, finalmente, desenvolveremos outro.

Programa do segundo dia


Quando você dorme o suficiente (isso deve ser feito: o cérebro assimila todas as informações recebidas durante o sono) e você chega ao seminário, sua segunda parte começa:


  • Relatório introdutório sobre os modelos assíncronos de APM e EAP no CLR / BCL. Quem disse que eles estão desatualizados? Tudo o que é novo é velho bem esquecido, o que significa que o velho não deve ser esquecido: a espiral do desenvolvimento retornará a ele mais de uma vez;
  • Uma abordagem funcional para o desenvolvimento de código assíncrono. Funcionalidade - não é apenas em F #. Nós entenderemos como escrever código de tal maneira que ele possa ser facilmente paralelizado e de modo que implique a menor quantidade de bloqueios e alocações;
  • Mais uma vez, para reduzir o calor em nossas cabeças, descansaremos no jantar. Vamos conversar, mudar o contexto.
  • Após o almoço, iremos polir nosso conhecimento. São eles: PLINQ, assíncrono / aguardar, os mecanismos de seu trabalho.

Justifique o empregador


Se você deseja economizar dinheiro pessoal e entrar em contato com seu empregador, mas não sabe como fazer isso, preparei abaixo um texto breve que pode ser usado enviando uma carta à gerência. Para quem já viu, ocultamos seu conteúdo em um spoiler:


Carta à gerência
Boa tarde

Yuri Ivanovich, hoje eu gostaria de entrar em contato com você com um pequeno pedido. Um seminário muito importante está ocorrendo em nossa cidade, do qual eu gostaria de participar. O tema do seminário se correlaciona com as nossas tarefas e ajudará bastante na solução deles: multithreading e competitividade. Eu, como todo funcionário, tenho muitas tarefas no trabalho e em casa. E, portanto, é muito difícil arranjar tempo para o autodesenvolvimento: em casa, você ainda deseja realizar tarefas da vida e no trabalho - trabalho. Portanto, a presença desse seminário é uma boa oportunidade para encontrar tempo para ouvir e usar o material que alguém lhe mascou e contou apenas as coisas mais importantes.

O workshop dura dois dias: 29 a 30 de novembro / 06 a 07 de dezembro. Mas, por um lado, o material que seria publicado em dois dias durante o estudo habitual de várias fontes levaria pelo menos um mês e, por outro lado, as datas do seminário foram escolhidas muito bem: todos os rumores do Ano Novo, se houver, começarão mais tarde. Além disso, durante as férias de Ano Novo, poderei ouvir todos os relatórios da gravação, o que fortalecerá meu conhecimento.

Há seu anúncio em Habré: https://habr.com/ru/company/clrium/blog/460635/
E o próprio workshop: CLRium

Apenas um terço de todos os ingressos permaneceu. Esperando por você!

Source: https://habr.com/ru/post/pt471482/


All Articles