次のダミーコードを実行する場合:
P = 2
library(foreach)
library(doMC)
registerDoMC(P)
f = double(length = P)
print('=== f values in loop ===')
foreach(c = 1:P) %dopar%
{
f[c] = c
print(f[c])
}
print('### f values after loop ###')
for(c in 1:P){ print(f[c]) }
次の出力が表示されます。
"=== f values in loop ==="
1
2
"### f values after loop ###"
0
0
f
ループで割り当てられた値がforeach
保存されないのはなぜですか?
特に、ループの後で と がゼロf[1]
にf[2]
等しいのはなぜですか?foreach
ありがとう!