public override void Release() { ArrayUtil.FillArray(base.AccessorList, null); if (this._isCached) { this._cache.StoreCount--; if (this._cache.StoreCount == 0) { this._cache.Clear(); } this._cache = null; this._isCached = false; } base.Manager.SetStore(base.table, null); }
public void ChangeToDiskTable() { this._cache = this._session.sessionData.GetResultCache(); if (this._cache != null) { IRowIterator rowIterator = base.table.GetRowIterator(this); ArrayUtil.FillArray(base.AccessorList, null); this._isCached = true; this._cache.StoreCount++; while (rowIterator.HasNext()) { Row nextRow = rowIterator.GetNextRow(); Row newCachedObject = this.GetNewCachedObject(this._session, nextRow.RowData); this.IndexRow(null, newCachedObject); nextRow.Destroy(); } } this._maxMemoryRowCount = 0x7fffffff; }