首页 > 解决方案 > std::task::Context 中使用的标记字段(PhatomData)是什么?

问题描述

我正在阅读 futures::task::Context 源代码,我不明白 _ 制造商的用途。虽然有评论,但我还是不明白他在说什么。

pub struct Context<'a> {
    waker: &'a Waker,
    // Ensure we future-proof against variance changes by forcing
    // the lifetime to be invariant (argument-position lifetimes
    // are contravariant while return-position lifetimes are
    // covariant).
    _marker: PhantomData<fn(&'a ()) -> &'a ()>,
}

任何人都可以帮助我吗?非常感谢!

标签: rust

解决方案


推荐阅读