отложенное закрытие соединений из sync Pool
Это нужно для случаев, когда пул уже решил убрать connection из состава, но connection в этот момент находится у пользователя в _used, поэтому закрывать его сразу нельзя. Если connection уже помечен на вытеснение, он будет закрыт при возврате в пул.
Ориентир: async #68 (closed)
В рамках задачи нужно:
- добавить Connection.to_evict: bool = False
- изменить Pool._release() так, чтобы connection с to_evict=True не возвращался в _pool, а закрывался при release
- закрывать evicted conn вне lock, чтобы не блокировать остальные операции пула
- после release уведомлять ожидающие acquire через текущий Condition