/// <summary> /// Releases the unmanaged resources used by the <see cref="DataWriter"/> object and optionally releases the managed resources. /// </summary> /// <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param> protected virtual void Dispose(bool disposing) { if (!m_disposed) { try { if (disposing) { if (m_settings.WriteToOpenHistorian) { m_historianServer.Dispose(); } else if (m_settings.WriteToBerkeleyDB) { m_berkeleyDb.Dispose(); Parallel.For(0, m_berkeleyDbPointList.Length, (i) => { m_berkeleyDbPointList[i].Key.Dispose(); m_berkeleyDbPointList[i].Value.Dispose(); }); } } } finally { m_disposed = true; // Prevent duplicate dispose. } } }
private void Dispose(bool disposing) { if (!disposing) { return; } db?.Close(true); db?.Dispose(); }
private void Dispose(bool disposing) { if (!disposing) { return; } cursor?.Close(); indexDb?.Close(true); indexDb?.Dispose(); db?.Close(true); db?.Dispose(); }