1

在 lib.rs 我有这个:

extern crate tokio_core;
use tokio_core::channel::{channel, Sender, Receiver};

最终出现此错误:

error[E0432]: unresolved import `tokio_core::channel`
 --> src/main.rs:2:17
  |
2 | use tokio_core::channel::{channel, Sender, Receiver};
  |                 ^^^^^^^ Could not find `channel` in `tokio_core`

查看tokio_core crate 的 lib.rs 文件,它导出channel如下:

#[doc(hidden)]
pub mod channel;

对于我的生活,我无法弄清楚为什么这不起作用。我在 Rust 1.29 和 1.30.1 上都试过这个。

4

1 回答 1

2

如果您查看channel.rs的顶部,您会看到整个模块已被弃用,并且只有在添加适当的功能时才可用:

#![deprecated(since = "0.1.1", note = "use `futures::sync::mpsc` instead")]
#![allow(deprecated)]
#![cfg(feature = "with-deprecated")]

但是,Cargo.toml甚至不允许启用此功能,而且显然从未启用。事实上,整个板条箱现在已被弃用:

弃用通知。

此 crate 计划弃用,以支持 tokio

tokio-core仍在积极维护中,但只会应用错误修复。所有新功能的开发都在 tokio中进行。

如弃用通知中所述,请futures::sync::mpsc::channel改用。

于 2018-11-16T18:32:10.090 回答