我需要同时运行4个函数,但其中一个根据用户输入不同而不同。
如果我使用"if-else",由于Future的原因,会出现"if和else具有不兼容的类型"。
我唯一能想到的方法是创建第三个函数,从其他两个函数中进行选择,但据我所知,它不能同时运行,并且需要等待过程。
另一种方法是制作两个不同的join!,但这似乎很费代码。
在这种情况下我应该怎么做?
tokio::join!(
self.func1(),
if self.flag() {
self.func2()
} else {
self.func3()
},
self.func4(),
self.func5()
);
函数签名如下:
pub async fn funcN(&self) -> Result<Vec<String>> {