close method

Future<void> close()

Closes the PeerstoreManager.

Implementation

Future<void> close() async {
  if (_closed) return;
  _closed = true;

  await _subscription?.cancel();
  _timer?.cancel();

  // Remove all disconnected peers
  for (var peerId in _disconnected.keys) {
    await _pstore.removePeer(peerId);
  }
  _disconnected.clear();

  if (!_lock.isCompleted) {
    _lock.complete();
  }
}