C#中的异步图像处理

Kon*_*rad 1 c# wpf asynchronous bitmap

我需要异步操作位图像素.有Bitmap和WriteableBitmap.我需要这样的东西:

public async Task<Bitmap> ProcessBitmap(Bitmap bitmap)
{
   // operate on bitmap asynchronously
   return newBitmap;
}
Run Code Online (Sandbox Code Playgroud)

我想使用WriteableBitmap并将其转换为流并使用流异步方法,但PixelBuffer属性在WPF和WinForms中似乎都不可用.我该怎么做?我也可以在某些情况下使用Parallel.For但是如何获得结果呢?

Lua*_*aan 5

图像处理几乎完全受CPU限制.没有可以利用的异步I/O.

不要将I/O绑定代码(异步工作得很好)与CPU绑定代码混淆(异步不会给你任何好处,真的).