IClearCase,C#中的IClearTool用法,如何管理分配的内存
我正在分配新的ClearCase应用程序类对象,下面的代码可以吗? 或者我是否需要释放内存,如果需要,如何释放?我正在使用ccauto.dll的ClearCase互操作,我相信ccauto.dll是非托管代码,我很困惑,我应该释放内存还是不释放内存 请告知IClearCase,C#中的IClearTool用法,如何管理分配的内存,c#,memory-management,clearcase,C#,Memory Management,Clearcase,我正在分配新的ClearCase应用程序类对象,下面的代码可以吗? 或者我是否需要释放内存,如果需要,如何释放?我正在使用ccauto.dll的ClearCase互操作,我相信ccauto.dll是非托管代码,我很困惑,我应该释放内存还是不释放内存 请告知 private void timer1_Tick(object sender, EventArgs e) { try { IClearCase ccNew = new A
private void timer1_Tick(object sender, EventArgs e)
{
try
{
IClearCase ccNew = new ApplicationClass();
CCVOB vob = ccNew.get_VOB(ClearCaseVOB);
ccNew = null;
}
catch
{
}
}
2评论:
- 根据:
一旦获得
ClearCase.Application
对象,它就可以用来获取其他对象
无需再次创建它们。CAL尽可能确保CAL对象与底层ClearCase数据保持同步,在调用属性和方法时根据需要进行刷新。
但是,如果有人删除了底层ClearCase数据,而CAL对象仍然持有引用,则CAL对象可能会变得无效 意思:您可以一次性地设置一个
CCVOB
实例(除非您认为Vob将消失…这应该是一个非常罕见的事件!)
- 在C#中,将代码放置在使用块中可确保控件一离开块,对象就被释放(尽管不一定被收集)
CCVOB
是否实现了Disposable
,但如果实现了,将其显式设置为null将阻止正确处理。所以我不建议
ccNew=null代码>