는 일반적으로 우리는 하나에 의해 배열을 반복 :동시 레일 반복/작업
a = [1, 2, 3, 4]
b = []
a.each do |x|
b << x * 5
end
b = [5, 10, 15, 20]
내가 배열의 내용의 순서에 대해 관심이 있지만, 반복의 속도를 증가하지 않으려면 곱셈 연산을 동시에 실행함으로써? 예를 들어 다음과 같은 결과가 허용됩니다.
b = [15, 10, 5, 20] # or
b = [5, 20, 15, 10] # or
b = [20, 15, 5, 10]
어떻게하면됩니까?
진정한 병렬 처리가 없습니다. 더 나은 루비 (Rubinius or JRuby)를 사용하고 있지 않는 한 –
동시 처리를 시뮬레이트하는 [parallel] (https://github.com/grosser/parallel)라고 불리는 매우 멋진 보석이 있습니다 만, 현재 GIL을 피할 수는 없습니다 YARV 또는 MRI 구현. –