gpt4 book ai didi

multithreading - 在 Rust 中,如何创建在其自己的操作系统线程中运行的任务?

转载 作者:行者123 更新时间:2023-11-29 07:46:03 24 4
gpt4 key购买 nike

这个问题不再相关:Rust green threading is gone。所有任务对应一个线程。

Rust 任务在由运行时管理的线程池中运行。

我正在通过 FFI 调用一些会阻塞的代码,我将在一个紧密的循环中执行此操作。

如何在其自己的操作系统线程上生成任务?

两个问题是线程在其线程上保持调度,并且工作窃取调度程序不会为该线程带来额外的工作。

最佳答案

std::task::spawn_sched ,您可以在一个新的单线程调度程序上生成任务,该调度程序将在其自己的操作系统线程上运行。

use std::task::{spawn_sched, SingleThreaded};

do spawn_sched(SingleThreaded) {

// This runs in its own OS thread

}

关于multithreading - 在 Rust 中,如何创建在其自己的操作系统线程中运行的任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19923351/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com