Concorrência em Java: Guia Prático de Programação Multithread
300 páginas
Portuguese
PDF
4.5

Concorrência em Java: Guia Prático de Programação Multithread

Concorrência em Java: Guia Prático de Programação Multithread

Autor:

Ano:

Resumo:

O livro «Concorrência em Java» é um guia prático completo para escrever aplicações multithread eficientes, seguras e escaláveis em Java. O autor, Alexei Smirnov, desenvolvedor sênior com 10 anos de experiência, conduz o leitor sequencialmente desde as abordagens clássicas (Thread, Runnable) até as ferramentas modernas (CompletableFuture, threads virtuais do Project Loom).



O material é construído no princípio «do simples ao complexo»: cada capítulo contém teoria, exemplos de código, erros típicos e suas soluções. Atenção especial é dada aos aspetos práticos: você aprenderá não apenas a escrever código multithread, mas também a depurá-lo, perfilá-lo e evitar problemas «infernais» como deadlock, livelock e race condition.



Para quem é este livro?

  • Desenvolvedores Java de nível Junior — dominarão a base: criação de threads, sincronização, wait/notify.
  • Desenvolvedores Middle — aprofundarão conhecimentos: pools de threads, Fork/Join, Stream API paralelos.
  • Todos que estão migrando do Java 8 para versões mais recentes (11, 17, 21+) — entenderão CompletableFuture e threads virtuais.


O que você aprenderá?

  • Como as threads funcionam na JVM e no sistema operacional.
  • Regras de sincronização: synchronized, Lock, Semaphore, CountDownLatch.
  • Coleções seguras do java.util.concurrent.
  • ExecutorService e pools de threads personalizados.
  • Programação assíncrona com CompletableFuture.
  • O mais recente mecanismo de threads virtuais (Project Loom) — como e quando aplicar.
  • Teste de código multithread com JUnit e jcstress.


O livro é escrito em linguagem viva, sem academicismo excessivo. Cada exemplo pode ser executado e modificado imediatamente. No final dos capítulos, há perguntas de autoavaliação e tarefas práticas.



Este é um livro de referência para qualquer desenvolvedor Java que deseja escrever aplicações rápidas, confiáveis e escaláveis. Independentemente de estar a criar um servidor de alta carga, uma aplicação desktop ou a processar Big Data, o conhecimento de concorrência é uma habilidade obrigatória.



Após a leitura, você será capaz de projetar sistemas multithread com confiança, evitar armadilhas típicas e utilizar eficazmente todos os núcleos do processador.

Recommendations