Giả sử tôi có danh sách chuỗi khá lớn (vài triệu mục hoặc hơn). Ý tưởng hay là chạy một cái gì đó như thế này:Bạn có nên chạy `... par.map (` trên danh sách lớn trực tiếp không?
val updatedList = myList.par.map(someAction).toList
Hoặc nó sẽ là một ý tưởng tốt hơn vào nhóm danh sách trước khi chạy ...par.map(
, như thế này:
val numberOfCores = Runtime.getRuntime.availableProcessors
val updatedList =
myList.grouped(numberOfCores).toList.par.map(_.map(someAction)).toList.flatten
UPDATE: cho rằng someAction
là khá đắt (so với grouped
, toList
, v.v.)