Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

QNetwork + QThread (+SQLite)

5.7K
15 сентября 2011 года
Lindemann66
193 / / 21.07.2011
Всем привет!

Следующий вопрос

Пишем программу, аналог UpdateScanner'а
Смысл
Программа висит в трее, проверяет с заданной периодичностью (разной для всех сайтов) html - код (скачанный из интернета через Network, etc.) на предмет новых ссылок
Если ссылки есть - пишет их в соотсвтетвующий файл (и в SQLite базу), а плагин в браузере - считывает их и подсвечивает жёлтым.

Очень хотелось бы узнать следующее
Есть ли какие-то особенности использования QNetwork (SQLite - второстепенное но тоже актуально), подключений (NetworkRequest) и вообще работы с сетью в потоках QThread?

Поясню
Сейчас есть класс ThreadManager, в котором создаются объекты для работы с БД, с тем же QNetwork
И потом указатели на них передаются в каждый поток (AnalyzerThread), где они и используются
То есть, необходимые элементы создаются не в каждом потоке, а в родительском

Я очень плохо разбираюсь в специфике потоков...

Сейчас всё работает раз через 5, то есть иногда выскакивают ошибки вида Unknown Http protocol (?), 301 ошибка, если много сайтов, всё зависает...

Видимо, надо как-то комбинировать mutex, moveToThread, SetParent, возможно, инициализировать все нужные переменные внутри потоков, а не передавать через конструктор...Но я сомневаюсь, что это решит проблему, но может вызвать перерасход памяти...

Вобщем
Люди, у кого есть опыт, поделитесь, пожалуйста, знаниями относительно данной проблемы, может, кто-то сталкивался с использованием QNetwork + SQLite в многопоточной среде QThread?

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог