Conteúdo:
- Entendendo Threads e Multi-threading
- O que são Threads?
- Vantagens do Multi-threading
- Threads vs. Processos
- Contexto de Thread e Estado
- Funcionamento Interno de Threads
- Modelo de Threads
- Thread Principal e Threads de Trabalho
- Sincronização e Concorrência
- Deadlocks e Condições de Corrida
- Criação e Gerenciamento de Threads
- Criação de Threads
- Thread Pools
- Gerenciamento de Estado e Prioridade
- Finalização de Threads
- Uso Prático de Threads
- Threads em Linguagens de Programação
- Aplicações de Threads em Programação
- Exemplos de Uso de Threads
- Considerações de Desempenho e Recursos
- Sincronização e Comunicação entre Threads
- Acesso Concorrente a Recursos
- Problemas de Sincronização
- Mecanismos de Sincronização
- Compartilhamento de Dados entre Threads
- Boas Práticas e Padrões
- Gerenciando Threads em Aplicações Grandes
- Evitando Deadlocks e Condições de Corrida
- Uso de Variáveis Voláteis
- Modelos de Design para Multi-threading
- Exemplos em C#
- Criando Threads em C#
- Sincronização com Monitores
- Utilizando Tarefas Assíncronas
- Programação Paralela com TPL
- Conclusão
- Recapitulação dos Principais Pontos
- Vantagens e Desafios do Uso de Threads
- Explorando Aprofundamentos Futuros