[阅读: 737] 2005-01-31 07:30:52
cdsAlarm->Delete();
//ClientDataSet在频繁的增、删数据时,会造成内存一直增长,
//这里记录删除的次数,定期重建一下数据集,释放一下内存。
if(lDeleteCount++ > 500)
{
lDeleteCount = 0;
lBackupData = cdsAlarm->Data;
cdsAlarm->Close();
cdsAlarm->Free();
cdsAlarm = new TClientDataSet(frmMain);
cdsAlarm->FieldDefs->Assign(cdsAlarmTemp->FieldDefs);
cdsAlarm->CreateDataSet();
cdsAlarm->Data = lBackupData;
cdsAlarm->LogChanges = false;
dsAlarm->DataSet = cdsAlarm;
}