Цитата(Llirik @ 23.7.2017, 14:15)

У меня коннект открывается всего лишь 1 раз при старте сферы и я работаю с базой и нигде её не закрываю. Я думаю 1 коннект это нормально. И закроется он сам.
Да правильнее было бы всё закрывать руками, но, как же сборка мусора и т.д. т.е. программа сама может закрыть.
А не дрочить каждый раз DB.CONNECT DB.CLOSE, как дятел.
Мой ответ: "Без разницы!" с 1 постоянно открытым коннектом я думаю ничего страшного не случиться и к тому же он убьётся при закрытии сферы.
Твой ответ ничего не значит потому что ты не смотрел в исходники Сферы. Ты лишь предполагаешь.
Я только что посмотрел на исходники из мастер ветки на гитхабе ( ХЗ что там в старых исходниках 56б ).
Там вызов закрытия соединения только в деструкторе обьекста CDataBase ( который выполняется при закрытии сервера )и различные закрытия при попытках оперировать с БД, но при этом БД не отвечает.
Сферовци сами реализовали обьект соединения с БД как синглтон. Так-же нельзя иметь одновременно соединения с двумя разными БД.
При краше Сферы или переполнении стека ( бесконечный цикл ), у тебя будет утечка одного коннекта в самой БД уже.
(Можно ещё как вариант глянуть в самой MySQL?(если речь о ней), есть ли там какой-то уборщик соединений которые не использовалишь дольше чем х времени и просто удалять их, освобождая тред. Наверняка должно что-то такое быть. На крайняк сделать свой скрипт и поставить на выполнение по расписанию)
"А не дрочить каждый раз DB.CONNECT DB.CLOSE, как дятел"
Зачем, если это можно мопестить в одну функцию и вызывать её постоянно, передавая ей в аргументы то что тебе нужно?
В принципе у Сферы нормальная стабильность, если руки на месте. Держать коннект постоянно открытым можно, но я не могу назвать это нормальной практикой (IMG:
style_emoticons/default/smile.gif)