Pular para o conteúdo

Cebraspe · Tribunal Superior Eleitoral (TSE) — Justiça Eleitoral 2024

Questão 99 — Programação: Rust — Concorrência (Arc e Mutex)

Programação Rust — Concorrência (Arc e Mutex)

Cebraspe 2024 Superior

Tribunal Superior Eleitoral (TSE) — Justiça Eleitoral · Analista Judiciário – Área: Apoio Especializado – Especialidade: Tecnologia da Informação

Gabarito disponível

Texto-base:
use std::sync::{Arc};
use std::thread;

fn main() {
let counter = Arc::new(0);
let mut handles = vec![];
for _ in 0..10 {
let counter_clone = Arc::clone(&counter);
let handle = thread::spawn(move || {
let mut num =
counter_clone.lock().unwrap();
*num += 1;
});
handles.push(handle);
}
for handle in handles {
handle.join().unwrap();
}
println!(“Resultado final do contador: {}”,
*counter.lock().unwrap());
}

Com base no trecho de código precedente, escrito em Rust, que cria um contador, julgue o item a seguir.

A instrução let counter = Arc::new(0); combina exclusão mútua com contagem atômica de referência e garante acesso seguro e exclusivo a dados entre threads.
Selecione uma alternativa

Ver gabarito

Gabarito: Errado

Fonte: Gabarito preliminar: Gabarito oficial definitivo — Cargo 17 (988_CPNUJE_017_01)