Struct std::task::RawWakerVTable1.36.0[−][src]

pub struct RawWakerVTable { /* fields omitted */ }
Expand description

虚拟函数指针表 (vtable),用于指定 RawWaker 的行为。

传递给 vtable 内所有函数的指针是来自封闭的 RawWaker 对象的 data 指针。

仅应在 RawWaker 实现内部从正确构造的 RawWaker 对象的 data 指针上调用此结构体内部的函数。 使用任何其他 data 指针调用所包含的函数之一将导致未定义的行为。

Implementations

从提供的 clone,wake,wake_by_ref 和 drop 函数创建新的 RawWakerVTable。

clone

克隆 RawWaker 时,例如克隆存储 RawWaker 的 Waker 时,将调用此函数。

此函数的实现必须保留 RawWaker 的此附加实例和关联任务所需的所有资源。 在生成的 RawWaker 上调用 wake 应该会唤醒原 RawWaker 会唤醒的相同任务。

wake

在 Waker 上调用 wake 时将调用此函数。 它必须唤醒与此 RawWaker 相关的任务。

此函数的实现必须确保释放与该 RawWaker 实例和关联任务相关联的所有资源。

wake_by_ref

在 Waker 上调用 wake_by_ref 时将调用此函数。 它必须唤醒与此 RawWaker 相关的任务。

该函数与 wake 相似,但一定不能使用提供的数据指针。

drop

丢弃 RawWaker 时将调用此函数。

此函数的实现必须确保释放与该 RawWaker 实例和关联任务相关联的所有资源。

Trait Implementations

返回值的副本。 Read more

从 source 执行复制分配。 Read more

使用给定的格式化程序格式化该值。 Read more

此方法测试 self 和 other 值是否相等,并由 == 使用。 Read more

此方法测试 !=。

Auto Trait Implementations

Blanket Implementations

获取 self 的 TypeId。 Read more

从拥有的值中一成不变地借用。 Read more

从拥有的值中借用。 Read more

执行转换。

执行转换。

获得所有权后的结果类型。

通常通过克隆从借用数据中创建拥有的数据。 Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into #41263)

recently added

使用借来的数据来替换拥有的数据,通常是通过克隆。 Read more

发生转换错误时返回的类型。

执行转换。

发生转换错误时返回的类型。

执行转换。