我想将C#中的以下代码转换为并行代码。我搜索了互联网,但我找不到合适的方法。感谢您的帮助。
Bitmap bmp = new Bitmap(1792, 2048);
for (int i = 0; i < 1792; i++)
{
for (int j = 0; j < 2048; j++)
{
bmp.SetPixel(i,j,Color.FromArgb(100, 128, 128));
}
}
答案 0 :(得分:0)
你应该只替换外循环:
Bitmap bmp = new Bitmap(1792, 2048);
Parallel.For(0, 1792, i =>
{
for (int j = 0; j < 2048; j++)
{
bmp.SetPixel(i,j,Color.FromArgb(100, 128, 128));
}
});
这假设同时调用SetPixel
是安全的,我不太确定。