在功能编程中,该map功能的一个好处是它可以实现为并行执行.
因此,在4核硬件上,此代码和并行实现map将允许同时处理 4个值.
let numbers = [0,1,2,3]
let increasedNumbers = numbers.map { $0 + 1 }
Run Code Online (Sandbox Code Playgroud)
好的,现在让我们谈谈这个reduce功能.
返回结果重复调用与初始化为初始化的自身的累积值和自身的每个元素,即返回组合(组合(...组合(组合(初始,自[0]),自[1]), ... self [count-2]),self [count-1]).
我的问题:是否reduce可以实现该功能以便并行执行?或者,根据定义,它只能按顺序执行?
例:
let sum = numbers.reduce(0) { $0 + $1 }
Run Code Online (Sandbox Code Playgroud)