確率変数を使用して正規分布を生成する Wpf コードを作成しました。
using System.Threading.Tasks;
using System.Threading;
private void Button_Click(object sender, RoutedEventArgs e)
{ .....
for (int t = 0; t < normalx.Count; t++)
{
normaly.Insert(t, (2 / ((Math.Pow(2 * Math.PI, 0.5)) * rmsnormalvalue)) * Math.Exp(-0.5 * Math.Pow(standardnormalx.ElementAt(t), 2)));
}
...
}
これは連続コードです。
並列スレッドとして実行するには、これを次のように変更しました
Parallel.For(0, normalx.Count, t =>
{
normaly.Insert(t, (2 / ((Math.Pow(2 * Math.PI, 0.5)) * rmsnormalvalue)) * Math.Exp(-0.5 * Math.Pow(standardnormalx.ElementAt(t), 2)));
});
ビルドは問題ありませんが、実行時にスレッド領域が 1 つだけです( normalx.Count/8
<- 私の PC は i7 です)
作業して計算しました。
何が悪いの?