當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust Thread.unpark用法及代碼示例


本文簡要介紹rust語言中 std::thread::Thread.unpark 的用法。

用法

pub fn unpark(&self)

如果句柄的令牌還沒有,原子地使它可用。

通過 park 函數和unpark() 方法,每個線程都配備了一些基本的低級阻塞支持。這些可以用作自旋鎖的更多CPU-efficient 實現。

有關更多詳細信息,請參閱park documentation

例子

use std::thread;
use std::time::Duration;

let parked_thread = thread::Builder::new()
    .spawn(|| {
        println!("Parking thread");
        thread::park();
        println!("Thread unparked");
    })
    .unwrap();

// Let some time pass for the thread to be spawned.
thread::sleep(Duration::from_millis(10));

println!("Unpark the thread");
parked_thread.thread().unpark();

parked_thread.join().unwrap();

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::thread::Thread.unpark。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。