Multithreading 如何使用人造丝进行枚举迭代?
我可以迭代和处理索引和变量,例如:Multithreading 如何使用人造丝进行枚举迭代?,multithreading,for-loop,rust,iterator,rayon,Multithreading,For Loop,Rust,Iterator,Rayon,我可以迭代和处理索引和变量,例如: let x = vec![5, 6, 7, 8]; for (index, val) in x.iter().enumerate() { println!("{} {}", val, index); } 现在对于rayon,据我所知,通过par_iter()的并行迭代不支持enumerate,因为它有ParallelIterator 人造丝似乎有IndexedParallelIterator,但我不知道如何使用它来产生与上面所示
let x = vec![5, 6, 7, 8];
for (index, val) in x.iter().enumerate() {
println!("{} {}", val, index);
}
现在对于rayon,据我所知,通过par_iter()
的并行迭代不支持enumerate,因为它有ParallelIterator
人造丝似乎有IndexedParallelIterator
,但我不知道如何使用它来产生与上面所示的简单for循环类似的结果
在并行迭代时,是否仍然可以跟踪每个值的索引?简单for循环是什么样子的?当您通过调用从创建时,它同时也是一个,这样您就可以调用它来获取项目索引,如下所示:
//rayon=“1.5”
使用人造丝::前奏::*;
fn main(){
设x=vec![5,6,7,8];
x、 par_iter().enumerate().for_each(|(index,val)|{
println!(“{}{}”,val,index);
});
}