Questão de TI - Desenvolvimento de Sistemas — Outras Linguagens de Programação — CESPE / CEBRASPE 2024
TI - Desenvolvimento de SistemasOutras Linguagens de Programação
- Código
- ce403853
- Banca
- CESPE / CEBRASPE
- Órgão
- TSE
- Ano
- 2024
- Cargo
- AJ
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.
- CCerto
- EErrado