WPF InteropBitmap可以从共享内存创建,即
Imaging.CreateBitmapSourceFromMemorySection()
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我们可以更新另一个线程或进程中的共享内存,然后在更新之后调用InteropBitmap.Invalidate()来显示更改.
从WPF源代码中,InteropBitmap只是IWICBitmap的包装器,但它不公开用于独占写入的IWICBitmap :: lock.
那么,我如何同步WPF InteropBitmap的写入和读取?
谢谢
fix*_*gon -2
您可以创建一个 WrapperClass,它公开一个锁对象和操作图像的方法。需要一些工作,但 100% 有效
就像是:
class InteropBitmapSyncWrapper
{
public InteropBitmapSyncWrapper(InteropBitmap wrappedBitmap)
{
WrappedBitmap = wrappedBitmap;
this.Lock = new Object();
}
public InteropBitmap WrappedBitmap
{
get;
set;
}
public Object Lock
{
get;
private set;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
662 次 |
| 最近记录: |