4 个版本
0.1.3 | 2024 年 5 月 4 日 |
---|---|
0.1.2 | 2024 年 4 月 25 日 |
0.1.1 | 2024 年 4 月 25 日 |
0.1.0 | 2024 年 4 月 25 日 |
#4 in #async-parallel
41 每月下载量
11KB
178 行代码(不含注释)
masterstat

从 QuakeWorld 主服务器获取服务器地址。
安装
cargo add masterstat
用法
从单个主服务器获取服务器地址
use std::time::Duration;
let master = "master.quakeworld.nu:27000";
let timeout = Some(Duration::from_secs(2));
match masterstat::server_addresses(&master, timeout) {
Ok(addresses) => { println!("found {} server addresses", addresses.len()) },
Err(e) => { eprintln!("error: {}", e); }
}
从多个主服务器获取服务器地址(异步,并行)
use std::time::Duration;
async fn test() {
let masters = ["master.quakeworld.nu:27000", "master.quakeservers.net:27000"];
let timeout = Some(Duration::from_secs(2));
let server_addresses = masterstat::server_addresses_from_many(&masters, timeout).await?;
}
另请参阅
- masterstat - Go 版本
- masterstat-cli - 命令行版本
依赖项
~3.5–5.5MB
~89K SLoC