add the concurrent version to array function