放置两个指向的物体
Disposing two objects pointed
我有一个应用程序可以流式传输网络摄像机的图像。
问题是当我关闭应用程序时它说 1 个对象仍然存在(未处理)。
出现问题时的代码为:
public override void Render(float dt)
{
camera.Lock();
if (newCameraFrame)
{
//Texture tmp = new Texture();
cameraTexture = camera.Texture;
newCameraFrame = false;
}
base.Render(dt);
camera.Unlock();
}
问题发生在行:cameraTexture = camera.Texture;
我成功地处理了这两个变量,但似乎仍然有东西在控制它们。
你有什么指示可以告诉我在哪里寻找问题吗?
这些对象是否实现了 IDisposable 接口?
那么你应该在 using 块中使用它们:
using(var cameraTexture = camera.Texture())
{
//..do all necessary things
}
//...here the object will be automatically disposed of
IDisposable()
模式是您应该查找的关键字...
我有一个应用程序可以流式传输网络摄像机的图像。 问题是当我关闭应用程序时它说 1 个对象仍然存在(未处理)。
出现问题时的代码为:
public override void Render(float dt)
{
camera.Lock();
if (newCameraFrame)
{
//Texture tmp = new Texture();
cameraTexture = camera.Texture;
newCameraFrame = false;
}
base.Render(dt);
camera.Unlock();
}
问题发生在行:cameraTexture = camera.Texture;
我成功地处理了这两个变量,但似乎仍然有东西在控制它们。
你有什么指示可以告诉我在哪里寻找问题吗?
这些对象是否实现了 IDisposable 接口?
那么你应该在 using 块中使用它们:
using(var cameraTexture = camera.Texture())
{
//..do all necessary things
}
//...here the object will be automatically disposed of
IDisposable()
模式是您应该查找的关键字...