9951 explained code solutions for 126 technologies


rustHow to join a thread in Rust?


Joining a thread in Rust is done using the join() method. This method blocks the current thread until the thread it is called on has completed its execution.

Example

use std::thread;

let handle = thread::spawn(|| {
    println!("Hello from a thread!");
});

handle.join().unwrap();

Output example

Hello from a thread!

The code above creates a new thread using the thread::spawn() method and stores the thread handle in the handle variable. The join() method is then called on the handle variable, which blocks the current thread until the thread it is called on has completed its execution.

Parts of the code:

  • thread::spawn(): creates a new thread and returns a handle to it
  • handle.join(): blocks the current thread until the thread it is called on has completed its execution

Helpful links

Edit this code on GitHub