Premiers threads et parallélisme Thread

1. Introduction

La façon triviale de créer un thread en langage Rust consiste en l’usage d’une fonction nommée spawn, disponible dans un module dédié aux threads, nommé thread. spawn

La documentation de cette fonction est disponible à cette adresse : https://doc.rust-lang.org/std/thread/fn.spawn.html

La documentation du module est disponible à cette adresse : https://doc.rust-lang.org/std/thread/index.html

Ce module fournit les outils permettant de créer de nouveaux threads, quel que soit le système d’exploitation sur lequel se compile le programme. Il offre aussi un certain nombre d’outils de communication entre threads.

2. Usage de spawn

a. Introduction

On commence par créer un petit projet dédié à nos premiers exemples :

cargo new first_threads --bin 
>    Created binary (application) `first_threads` package 

Dans celui-ci, on déclare le module dont on a besoin :

use std::thread; 

Puis on crée un nouveau thread grâce à spawn qui, pour le moment, ne fera rien du tout :

use std::thread; 
 
fn main() {  
  
    thread::spawn(move || { 
        // On ne fait rien dans ce thread. 
    }); 
} spawn move 

Il n’y a rien de très spectaculaire dans ce code, d’autant qu’on ne peut pas vraiment vérifier...

Pour consulter la suite, découvrez le livre suivant :
couv_EIRUST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Introduction
Suivant
Communication entre threads