c#winform,内存一直增长,直到内存溢出

zhqiao87 zhqiao87 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
static WeakReference wr = new WeakReference(null);
private void SetTheCsOnlineSight()
{
try
{
if (!isReult)
{
return;
}
IntPtr hscrdc = GetWindowDC(csHwnd);//调用api
Rectangle rect = new Rectangle();
GetClientRect(csHwnd, ref rect);//调用api获得窗口信息
Graphics g = wr.Target as Graphics; //Graphics.FromHdc(hscrdc);
int height = 0;
if (g == null)
{
g = Graphics.FromHdc(hscrdc);
wr.Target = g;
}
if (rdWindow.Checked)
{
//窗口化时需要加上任务栏高度
height = rect.Height / 2 + (Screen.PrimaryScreen.Bounds.Height - Screen.PrimaryScreen.WorkingArea.Height) + u;
}
if (rdAllScreen.Checked)
{
height = rect.Height / 2 + u;
}
g.DrawEllipse(new Pen(color), rect.Width / 2 + l, height, w, h);//准星大小
g.FillEllipse(new SolidBrush(color), (rect.Right - rect.Left) / 2 + l, height, fw, fh);//填充为实型
}
catch { }
finally
{
GC.Collect();
}
}

改成弱引用还是会内存溢出,求高手解答,在线等.
...全文

相关推荐

评论 10
收藏 已收藏
分享
返回顶部
zhqiao87
C# 111,128 成员 642,536 内容