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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: [1] 2 3 ... 290
1  Qt / Базы данных / Re: QSqlQueryModel, сортировка и фильтрация : Июль 01, 2024, 15:09
Конечно нужно сортировать средствами базы, она для этого и нужна.
2  Qt / Qt-инструментарий / Re: qt6+QtCreator12 в Linux'е : Февраль 13, 2024, 13:33
Вот этот пакет еще поставь qt6-tools и будет help
3  Qt / Qt-инструментарий / Re: qt6+QtCreator12 в Linux'е : Февраль 10, 2024, 14:53
Здесь лежат все примеры:
usr/share/doc/qt6/examples/

Документацию можно читать в assistant или в креаторе в разделе "Справка".

Покажи что выводит команда:
pacman -Qs qt6
4  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Февраль 04, 2024, 20:31
Результатов пока нет?  Улыбающийся
5  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 31, 2024, 11:22
Посмотрел трафик postgresql, там бинарный формат, но очень простой.
Код
C++ (Qt)
uint8_t type;
uint32_t length;
uint8 payload[ length - sizeof( length ) ];
 

type = 0x51 - Simple query
length содержит длину тела, включая само поле length
payload содержит строку запроса 'select * from tab;'

type = 0x54 - Row description
Это ответ на запрос, row идут последовательно один за другим
6  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 31, 2024, 11:00
И еще момент, лучше разделять запросы по ';' не смотря на 'SELECT'.
В SQL есть и другие команды, кроме выборки данных (SELECT). Улыбающийся
7  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 31, 2024, 10:49
Прочитал очередную порцию данный (chunk) добавил к общему буферу.
А дальше уже смотришь, если в общем буфере получена команда полностью (от SELECT и до ';'),  то выкусываем ее из буфера и обрабатываем, иначе ждем оочередной чанк.
8  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 31, 2024, 10:26
А если запрос получен не полностью?
Например, получили только
"SELECT * FRO"
а остаток прилетит позже?
9  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 31, 2024, 08:49
Как я понимаю, сейчас прокси может обрабатывать один запрос от одного клиента. Только после завершения обмена с одним клиентом, происходит переход к следующему.
Но это не очень эффективно, если мы отправили серверу запрос, который он будет обрабатывать 5 секунд, а от других клиентов есть запросы, которые сервер сможет выполнить параллельно за 1 сек, то из-за прокси клиенты будут ждать, пока выполниться долгий запрос.
Т.е. все запросы выполняются последовательно, а тот же postgres может их обрабатывать параллельно.

Логика должна быть другой, на старте поднимается только сокет, который принимает подключения от клиентов.
При подключении нового клиента, выполняем подключение к серверу и после этого имеем пару сокетов client-proxy и proxy-server, вот все что приходит по первому сокету, нужно отправить во второй и наоборот. Если один из сокетов закрывается, то нужно закрыть и второй.
Как правило эти два сокета храняться в объектах, которые называют session. Улыбающийся
10  Qt / Работа с сетью / Re: tcp proxy server. Только на berkley sockets (select/poll/epoll) : Январь 30, 2024, 18:47
Так а проксик то работает? Улыбающийся
11  Qt / Вопросы новичков / Re: как правильно работать с Qt, чтобы не было утечек памяти? : Декабрь 11, 2023, 17:39
Эх, какие были срачи... Ушла эпоха. Улыбающийся

Но хорошо что Igors нашелся (а то я даже беспокоиться начал - не сарказм), значит еще пообсуждаем. Улыбающийся
12  Qt / Вопросы новичков / Re: Как написать функцию Length(QList *)? : Август 17, 2023, 18:59
Код
C++ (Qt)
template<typename Container>
size_t Length( Container c )
{
 return c.size();
}
 
13  Qt / Вопросы новичков / Re: Ошибка с декларированием собственного класса : Октябрь 17, 2022, 18:34
нет, я имел в виду конструктор копирования по умолчанию Улыбающийся
Тогда не понятно почему "полное отсутствие" идентично этой записи. Улыбающийся
14  Qt / Вопросы новичков / Re: Ошибка с декларированием собственного класса : Октябрь 17, 2022, 16:44
полное отсутствие конструктора копирования в классе идентично записи
Код
C++ (Qt)
MyClass(const MyClass & other) = default;

Наверное имелось ввиду?
Код
C++ (Qt)
MyClass(const MyClass & other) = delete;
 
15  Qt / Общие вопросы / Re: Передача ассоциативного массива из QML в C++. Преобразование QJSValue в QVariant : Сентябрь 29, 2022, 10:52
QJSValueIterator

QJSValue QJSValue::property(const QString &name) const
Страниц: [1] 2 3 ... 290

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