internal class DoubleBufferBmp
{
private Bitmap[] mBmps = new Bitmap[2];
private int mGetIdx = 0;
public Bitmap Bitmap
{
get
{
return mBmps[Thread.VolatileRead(ref mGetIdx)];
}
set
{
int setIdx = (Thread.VolatileRead(ref mGetIdx) + 1) % 2;
if (mBmps[setIdx] != null)
{
mBmps[setIdx].Dispose();
}
mBmps[setIdx] = value;
Thread.VolatileWrite(ref mGetIdx, setIdx);
}
}
}
08-20
2208
2208
03-23
2067
2067
08-24
2994
2994
01-20
09-05
1701
1701
11-27
194
194
10-13
2697
2697

被折叠的 条评论
为什么被折叠?



