C#如何使用MemoryStream进行多线程处理

Pol*_*ich 4 c# multithreading memorystream

我目前的代码是:

public static byte[] ImageToByte(Image img)
{

        byte[] byteArray = new byte[0];
        using (MemoryStream stream = new MemoryStream())
        {
            img.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
            stream.Close();
            byteArray = stream.ToArray();
        }


        return byteArray;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法让这个工作与多线程,或使用我的CPU的每个核心,使其更快?

app*_*der 5

如果要将多个图像转换为字节数组并且事先了解它们,则可以使用Parallel.ForEach循环并在此处完成此操作,以便可以在不同的核心中完成它们(如果可用).但我不认为修改这种使用多核的单一方法是值得的,并且可以节省任何时间.