проблема с общим подключением postgres - PullRequest
2 голосов
/ 05 марта 2012


Я использую базу данных postgres 9.0, где в моей программе на C я подключаю базу данных только один раз и с помощью форка я генерирую процессы, где вся моя дочерняя программа разделяет соединение Большую часть времени это работает правильно, В некоторых случаях дочерний элемент A получает ошибку запроса дочернего элемента B, а также проблемы с тайм-аутом запроса и все

У меня вопрос: есть ли какая-то ошибка, чтобы делиться связями? в секунду это может создать от 1 до 5 процессов при максимальной

Примечание: Я никогда не закрываю соединение вообще

1 Ответ

2 голосов
/ 05 марта 2012

Потоки не должны разделять одно соединение с базой данных, потому что вы столкнетесь с той проблемой, которую вы описали в своем вопросе: один поток может получить выходные данные запроса другого потока.Вместо этого вы хотите, чтобы каждый поток подключался отдельно.Если у вас много потоков, вы можете рассмотреть возможность создания пула соединений .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...