Programação Concorrente e Assíncrona com Python
- Descrição
- Currículo
- FAQ
- Revisões
Antigamente para melhorarmos a performance de programas bastava executá-los em hardwares mais novos e mais rápidos já que a Lei de Moore dizia que a cada 18 meses teríamos o dobro da capacidade de processamento.
Esta lei não funciona mais, e agora as fabricantes estão adicionando mais núcleos (cores) aos processadores para aumentar o poder de processamento.
Por padrão a linguagem Python executa seus programas em um único processador e em uma única thread.
Neste curso você aprenderá, de forma simples, objetiva e prática, a fazer o uso correto de threads, multiprocessamento, programação assíncrona e levar seus programas Python ao extremo com Cython.
Desta forma você poderá fazer com que seus programas sejam mais eficientes, responsivos e rápidos, pois eles serão executados em vários núcleos (cores) simultaneamente.
Este é um curso definitivo sobre programação paralela em Python. Ele cobre os conceitos básicos altamente testados e comprovados, como threads e multiprocessamento, bem como os recursos assíncronos mais modernos baseados em Python 3.7+ com async e await.
Além dos conceitos básicos e APIs para programação simultânea, você aprenderá as práticas recomendadas e como escolher entre as várias APIs, bem como como usá-las juntas para obter a maior vantagem.
Você aprenderá:
– Trabalhar com Threads em Python;
– Trabalhar com Multiprocessamento em Python;
– Trabalhar com Programação Assíncrona em Python;
– Executar seus programas com velocidade extrema com Cython;
– (Conteúdo adicional) Introdução ao FastAPI;
– Aulas práticas;
– E muito mais!
-
3O que vamos aprender nesta seção?Vídeo Aula
-
4Conceitos sobre concorrência e programação assíncronaVídeo Aula
-
5Tipos de concorrênciaVídeo Aula
-
6Concorrência em PythonVídeo Aula
-
7Global Interpreter Lock - GILVídeo Aula
-
8Exercício Prático: Performance Padrão PythonVídeo Aula
-
9Mão na massa geek!Questionário
-
10RecapitulandoVídeo Aula
-
11O que vamos aprender nesta seção?Vídeo Aula
-
12Introdução às ThreadsVídeo Aula
-
13Exercício Prático: Criando Threads Simples em PythonVídeo Aula
-
14Exercício Prático: Criando Threads Múltiplas em PythonVídeo Aula
-
15Entendendo o funcionamento das threadsVídeo Aula
-
16Sincronização de ThreadsVídeo Aula
-
17Comunicação entre Threads usando QueuesVídeo Aula
-
18Exercício Prático: Segurança ao usar Threads - Parte 1Vídeo Aula
-
19Exercício Prático: Segurança ao usar Threads - Parte 2Vídeo Aula
-
20Exercício Prático: Performance Python ThreadsVídeo Aula
-
21RecapitulandoVídeo Aula
-
22O que vamos aprender nesta seção?Vídeo Aula
-
23Introdução ao MultiprocessamentoVídeo Aula
-
24Processos vs ThreadsVídeo Aula
-
25Exercício Prático: Conhecendo a API de Multiprocessamento do PythonVídeo Aula
-
26Exercício Prático: Trabalhando com Pools de ProcessosVídeo Aula
-
27Exercício Prático: Comunicação entre processosVídeo Aula
-
28Exercício Prático: Compartilhando estados entre processosVídeo Aula
-
29Exercício Prático: Sincronização de processosVídeo Aula
-
30Exercício Prático: Abstraindo Mecanismos de ConcorrênciaVídeo Aula
-
31Exercício Prático: Performance Python MultiprocessosVídeo Aula
-
32RecapitulandoVídeo Aula
-
33O que vamos aprender nesta seção?Vídeo Aula
-
34Introdução à programação AssíncronaVídeo Aula
-
35Exercício Prático: Trabalhando com Assincronia em Thread SimplesVídeo Aula
-
36Exercício Prático: Eventos Multitarefas com Loop de Eventos e CorrotinasVídeo Aula
-
37Exercício Prático: Compreendendo o AsyncioVídeo Aula
-
38Exercício Prático: Executando Tarefas em ParaleloVídeo Aula
-
39Exercício Prático: Bibliotecas Async IOVídeo Aula
-
40Combinando Corrotinas com Threads e ProcessosVídeo Aula
-
41Exercício Prático: Performance Python AssíncronoVídeo Aula
-
42RecapitulandoVídeo Aula
-
43O que vamos aprender nesta seção?Vídeo Aula
-
44Introdução ao CythonVídeo Aula
-
45Comparando a sintaxe de Python vs CythonVídeo Aula
-
46Exercício Prático: Seu primeiro programa com CythonVídeo Aula
-
47Compreendendo os conceitos do CythonVídeo Aula
-
48(Extra) Encontrando o gargalo do programa com CprofileVídeo Aula
-
49Exercício Prático: Seu programa Python ao extremo com CythonVídeo Aula
-
50RecapitulandoVídeo Aula