There's also the option of using a queue that's accessed by various threads and a single thread with a single connection that actually talks with the DB. I've been sucessfull with this aproach, at least in a very particular and well defined scenario. As for reiventing the wheel, it's probably very pointless and prone to erros like Andrew mentions. The DB has transactions, they work well, use them to your advantage.
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера