Russian Qt Forum
Июня 05, 2025, 06:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Использование одного подключения к MySql в разных потоках  (Прочитано 7565 раз)
Axel
Гость
« : Февраля 22, 2008, 18:51 »

Возникает ощибка при использовании одного подключения к MySql в разных потоках, какие существуют способы решения этой проблемы ?
Записан
ритт
Гость
« Ответ #1 : Февраля 22, 2008, 19:05 »

искать по форуму...адназначна
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #2 : Февраля 22, 2008, 23:10 »

Возникает ощибка при использовании одного подключения к MySql в разных потоках, какие существуют способы решения этой проблемы ?

Еще бы знать какая ошибка.
Записан
IGHOR
Крякер
****
Offline Offline

Сообщений: 390



Просмотр профиля WWW
« Ответ #3 : Февраля 24, 2008, 04:59 »

mutex
Записан
ритт
Гость
« Ответ #4 : Февраля 25, 2008, 07:20 »

нет
у кутэ на мускуль такое ограничение
обходится
Записан
Axel
Гость
« Ответ #5 : Февраля 25, 2008, 13:35 »

нет
у кутэ на мускуль такое ограничение
обходится
Не понял, можно подробнее ?
Mutex не помог ((( ...
Записан
ритт
Гость
« Ответ #6 : Февраля 25, 2008, 16:50 »

и не должен был

тебе критично использовать в разных потоках одно подключение? если нет, клонируй коннект и не усложняй жизнь
Записан
DpoHro
Гость
« Ответ #7 : Февраля 25, 2008, 18:16 »

Что значит "клонируй коннект", извините?
Записан
ритт
Гость
« Ответ #8 : Февраля 26, 2008, 05:20 »

QSqlDatabase QSqlDatabase::cloneDatabase ( const QSqlDatabase & other, const QString & connectionName )   [static]
как вариант
Записан
DpoHro
Гость
« Ответ #9 : Февраля 27, 2008, 01:11 »

Пардон, не дочитал мануал =)
А не есть ли сие эквивалент просто созданию коннекта с новым идентификатором?
Записан
ритт
Гость
« Ответ #10 : Февраля 27, 2008, 03:01 »

оно и есть

дело в том, что для каждого потока для использования соединения должна быть вызвана мускуль_инит (ручками или при открытии нового соединения)

если уж совсем невтерпёжь пользовать _ОДИН_ коннект (к мускуль-серверу), создаём отдельный тред с требуемым набором слотов и сигналов, открываем в нём коннект и пользуем коннект через получившуюся обёртку

другой вариант - обратить свой взор на libqxt - там уже реализовано асинхронное обращение к скл-серверу (несколько схожим образом, но с бОльшими затратами памяти, т.к. результат запроса полностью выбирается в буффер)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 2.464 секунд. Запросов: 23.