Что означает "ключ" в пуле соединений psycopg?

Я просматриваю документацию по Психологическому подключению и не понимаю, для чего нужны "ключевые" аргументы в getconn и putconn?

1 ответ

Решение

Просмотр исходного кода psycopg2 (lib/pool.py) вы можете видеть, что psycopg2.pool.AbstractConnectionPool класс имеет dict атрибут с именем _used где ссылки на пул ссылаются. key параметр в getconn а также putconn методы - ключ к элементам в этом словаре. По умолчанию, если значение key Параметр этих методов None id объекта подключения используется в качестве ключа.

В основном key Параметр позволяет разработчикам конкретных классов пула соединений идентифицировать соединения. Например, в psycopg2.pool.PersistentConnectionPool класс, одно соединение предназначено для совместного использования в одном потоке, поэтому в качестве ключа используется идентификатор потока.

Другие вопросы по тегам