Translate

lunes, 5 de febrero de 2024

Threads en Rust


Los subprocesos de Rust funcionan de manera similar a otros lenguajes:

use std::thread;

use std::time::Duration;


fn main() {

    thread::spawn(|| {

        for i in 1..10 {

            println!("Count in thread: {i}!");

            thread::sleep(Duration::from_millis(5));

        }

    });


    for i in 1..5 {

        println!("Main thread: {i}");

        thread::sleep(Duration::from_millis(5));

    }

}


  • Los subprocesos son todos subprocesos de demonio, el subproceso principal no los espera.
  • Los pánicos en los hilos son independientes entre sí.
  • Los pánicos pueden llevar una carga útil, que se puede descomprimir con downcast_ref.