Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Threads na Linguagem Rust
Rating: 4.9 out of 5(15 ratings)
171 students

Threads na Linguagem Rust

Aprenda a criar threads na linguagem Rust e usar os mecanismos de comunicação e sincronização entre threads.
Last updated 8/2024
Portuguese
Portuguese [Auto],

What you'll learn

  • Acesso vitalício por 25,90 reais aplicando cupom "2025OUT"
  • O que são e como funcionam as Threads em Rust.
  • Como criar Threads para executar várias partes do programa ao mesmo tempo.
  • A diferença entre scoped threads e threads normais.
  • Como passar valores para a thread no momento da sua criação.
  • Como esperar o término de uma thread e receber valores na sua finalização.
  • Como usar Canais para enviar e receber mensagens entre as threads.
  • Como usar Mutex e variáveis compartilhadas na comunicação e sincronização entre threads.
  • Qual a importância do Arc quando threads são usadas.
  • Como funcionam as barreiras (Barriers) na sincronização das threads.
  • Como funciona o lock tipo leitores&escritores (RwLock) usado na sincronização das threads.
  • O que é e como funciona uma variável condição (Condvar).
  • Um exemplo de paralelização de código para aproveitar a existência de vários núcleos processadores.

Course content

11 sections67 lectures11h 51m total length
  • Objetivo, Método e Pré-Requisitos8:41
  • Instalando o Rust7:11
  • Instalando Visual Studio Code9:33
  • Executando os Exemplos do Curso6:17

Requirements

  • Ter feito o meu Curso Básico de Linguagem Rust na Udemy ou ter o conhecimento equivalente (veja descrição do curso no site da Udemy).
  • NÃO precisa saber NADA sobre Threads.
  • Conhecimento básico de Closures é útil mas não estritamente necessário (veja descrição do curso no site da Udemy).

Description

Na programação concorrente diferentes partes de um programa são executadas de forma simultânea, e colaboram entre si para atingir os objetivos da aplicação. Esta simultaneidade pode ser via vários processadores (programação paralela), ou via o compartilhamento no tempo de um mesmo processador, via sistema operacional. Trata-se de um estilo de programação cada vez mais importante à medida que mais computadores possuem múltiplos processadores (cores).

Rust embute nativamente todos os recursos necessários para programação concorrente. Ela permite a criação de Threads e a comunicação e sincronização entre Threads tanto via mensagens como via variáveis compartilhadas. Rust aproveita o conceito de Ownership (propriedade) e a verificação rigorosa de tipos para detectar em tempo de compilação erros que normalmente só apareceriam durante a execução. Como testar programas concorrentes é notadamente difícil, a programação concorrente fica muito mais fácil com Rust, pois o compilador ajuda muito.

Este curso descreve a criação e o uso de Threads no contexto da Linguagem de Programação Rust. É suposto que o aluno conhece o básico de Rust. Por exemplo, fez o meu curso "Curso Básico de Linguagem Rust" na Udemy (veja descrição do curso no site da Udemy) ou tem o conhecimento equivalente. É suposto que o aluno NÃO CONHECE NADA sobre Threads em Rust. Conhecimento básico de Closures é útil mas não estritamente necessário (veja descrição no site da Udemy do meu curso "Closures na Linguagem Rust").

As aulas são conduzidas através de exemplos com programas compiláveis e executáveis. Todos os programas exemplo usados estão disponíveis para download. Durante as aulas o instrutor utiliza o Visual Studio Code, mas o aluno acostumado com outra IDE (Ambiente Integrado de Desenvolvimento) poderá utilizá-la também.

As Threads em Rust são apresentadas e explicadas através dos programas exemplo. São abordados temas tais como Canais, Mutex, Scoped Threads, Arc, RwLock, Barrier, etc.


Who this course is for:

  • Pessoas que fizeram um curso básico de Rust e agora querem continuar com os temas mais avançados da linguagem.
  • Programadores em geral que estão conhecendo Rust agora e querem implementar programas concorrentes com múltiplas threads.
  • Desenvolvedores de software interessados em conhecer programação multithreads no contexto da linguagem de programação Rust.
  • Alunos de graduação e pós-graduação em cursos de informática e engenharia interessados em expandir seus conhecimentos de programação com threads usando a linguagem Rust.
  • Os alunos do curso poderão utilizar o sistema operacional e o ambiente de programação com o qual já estão acostumados, dado que a linguagem Rust e suas threads são suportadas por todos os principais ambientes.