Loops 如何使用Tokio以秒为单位在每个周期或间隔触发函数?
在Node.js中,我可以设置触发某个事件的时间间隔Loops 如何使用Tokio以秒为单位在每个周期或间隔触发函数?,loops,rust,intervals,tokio,Loops,Rust,Intervals,Tokio,在Node.js中,我可以设置触发某个事件的时间间隔 函数intervalFunc(){ log('whelp,再次触发!'); } setInterval(intervalFunc,1500); 然而,Tokio间隔的界面要复杂一些。这似乎与区间的字面定义有关,而不是在区间调用函数,它只是暂停线程直到时间过去(使用。wait) 东京有没有一个“每x秒”调用一个函数之类的原语?如果没有,有没有一个成语已经出现了这样做 我只需要在一个循环间隔上运行一个函数。。。我也不关心其他线程。这只是Toki
函数intervalFunc(){
log('whelp,再次触发!');
}
setInterval(intervalFunc,1500);
然而,Tokio间隔的界面要复杂一些。这似乎与区间的字面定义有关,而不是在区间调用函数,它只是暂停线程直到时间过去(使用。wait
)
东京有没有一个“每x秒”调用一个函数之类的原语?如果没有,有没有一个成语已经出现了这样做
我只需要在一个循环间隔上运行一个函数。。。我也不关心其他线程。这只是Tokio事件循环中的一个函数。用于创建一个可以重复勾选的值。在的主体内执行勾选并调用函数以创建流:
use futures::{stream,streamxt};//0.3.13
使用std::time::{Duration,Instant};
使用tokio::time;//1.3.0
#[tokio::main]
异步fn main(){
让间隔=时间::间隔(持续时间::从_millis(10));
让永远=流::展开(间隔,|多间隔|异步{
interval.tick()等待;
做某事等待;
有些(((),区间))
});
让现在=瞬间::现在();
永远。为每个人(| |异步{})。等待;
}
异步fn do_something(){
eprintln!(“做点什么”);
}
您还可以生成一个Tokio任务来永远做一些事情:
使用std::time::Duration;
使用tokio::{task,time};//1.3.0
#[tokio::main]
异步fn main(){
让永远=任务::繁殖(异步{
设mut interval=time::interval(持续时间::from_millis(10));
环路{
interval.tick()等待;
做某事等待;
}
});
永远等待;
}
另见:
use futures::{stream,streamxt};//0.3.13
使用std::time::{Duration,Instant};
使用tokio::time;//1.3.0
#[tokio::main]
异步fn main(){
让间隔=时间::间隔(持续时间::从_millis(10));
让永远=流::展开(间隔,|多间隔|异步{
interval.tick()等待;
做某事等待;
有些(((),区间))
});
让现在=瞬间::现在();
永远。为每个人(| |异步{})。等待;
}
异步fn do_something(){
eprintln!(“做点什么”);
}
您还可以生成一个Tokio任务来永远做一些事情:
使用std::time::Duration;
使用tokio::{task,time};//1.3.0
#[tokio::main]
异步fn main(){
让永远=任务::繁殖(异步{
设mut interval=time::interval(持续时间::from_millis(10));
环路{
interval.tick()等待;
做某事等待;
}
});
永远等待;
}
另见:
用于每个(| |异步{})代码>@EvanCarroll伙计,真让人困惑。。你不能用。重复?@EvanCarroll永远重复。等待而不是超时。我认为如果我们将两者都减少到无限循环,而不是10次循环,我们可以更清楚地演示这两件事,并删除了与您试图显示的内容不相关的已用计算。只有几点(我投了赞成票并将其标记为选中)。我还问了一个后续问题,这甚至可以做什么:for|each(| | async{})代码>@EvanCarroll伙计,真让人困惑。。你不能用。重复?@EvanCarroll永远重复。等待而不是超时。我认为如果我们将两者都减少到无限循环,而不是10次循环,我们可以更清楚地演示这两件事,并删除了与您试图显示的内容不相关的已用计算。只有几点(我投了赞成票并将其标记为选中)。我还要求跟进,,