因此,当我关闭表单时,我目前正在处理许多对象。即使它可能会自动处理它。但我仍然更喜欢在处理时遵循“规则”,希望它会坚持并有助于防止错误。
所以这就是我目前的处理方式,它有效。
if (connect == true)
{
Waloop.Dispose();
connect = false;
UninitializeCall();
DropCall();
}
if (KeySend.Checked || KeyReceive.Checked)
{
m_mouseListener.Dispose();
k_listener.Dispose();
}
if (NAudio.Wave.AsioOut.isSupported())
{
Aut.Dispose();
}
if (Wasout != null)
{
Wasout.Dispose();
}
if (SendStream != null)
{
SendStream.Dispose();
}
所以基本上,第一个是如果一个布尔值是真的,这意味着如果不是,那些可以被忽略,因为我认为它们还没有被制造出来。
如果它在那里,其他的只是我处理的方式。但这不是一个很好的方法,我希望它具有 1 个大功能,意思是。
如果没有处置,请处置。或者其他的东西。我知道他们中的许多人都有“isdisposed”布尔值,所以如果我可以检查每个对象,并且如果它是假的,就应该处理它。