Добрый день. Есть проект на Qt. Некий сервер со сбором информации, грубо говоря, подключился к нашему серверу клиент, мы эту информацию должны записать куда-то в БД. Сам объект QTcpServer работает в отдельном потоке (назовем его ObjServer), объект для записи информации о клиентах работает, соответственно, в другом потоке (пусть будет ObjInfo). Как сейчас реализовано взаимодействие этих двух классов:
1. В объект ObjServer передается указатель на объект ObjInfo.
2. Когда нужно записать какую-то информацию о клиенте, то в методе объекта ObjServer вызывает публичный метод объекта ObjInfo.
3. В ранее вызванном методе ObjInfo вызывается InvokeMethod слота объекта ObjInfo, чтобы сама фактическая запись происходила уже в отдельном потоке.
Такой принцип работает, но получается слишком много дублирующего кода. Например, у нас может быть несколько видов информации о клиенте, с разными параметрами и для каждого подобного «чиха» нужно будет городить и публичный метод и слот. Можно, например, вызывать InvokeMethod из объекта ObjServer, но такое решение мне кажется не сильно красивым, что ли. В общем, как-то так, буду благодарен, за любой совет/пинок в нужную сторону. Спасибо.