trimOpenConns method

  1. @override
Future<void> trimOpenConns()
override

Terminates open connections based on an implementation-defined heuristic.

Implementation

@override
Future<void> trimOpenConns() async {
  // This is a simple implementation that closes idle connections
  final now = DateTime.now();
  final idleConnections = _lastActivity.entries
      .where((entry) => now.difference(entry.value) > idleTimeout)
      .map((entry) => entry.key)
      .toList();

  for (final conn in idleConnections) {
    if (!isProtectedConnection(conn)) {
      await closeConnection(conn);
    }
  }
}