Можно ли синхронизировать QVector (или другие контейнеры qt) через центральный сервер? Что-то вроде connect (vectorWrapper, SIGNAL (dataChanged), server, (receiveCopyOfUpdatedVector));?
Есть ли готовая к использованию функция, позволяющая подключить dataChanged к UNKNOWN_QT_FUNCTION_WHICH_REPLICATES_CONTAINERS и синхронизировать ее с сервером или другим хостом?
Мой вариант использования:
User1 (container1, read only container2) -> Server (container1,container2) <- User2 (read only container1,container2)
Пользователь1 может изменить контейнер1, реплицируя его на сервер, и сервер уведомляет пользователя2 об обновленном контейнере1. И наоборот для контейнера два.
Вот пример кода и мои шаги, которые я сделал до сих пор:
Я хотел бы синхронизировать контейнер между двумя хостами в сети. Допустим, у меня есть телефонная книга организации и я хочу обновить телефонную книгу на сервере, когда кто-то вводит новый номер. Изменения на сервере должны быть переданы обратно каждому пользователю.
Если найдена некоторая документация для отдельных объектов (пример коммутатора), но не документация для готовых контейнеров.
https://doc.qt.io/qt-5/qtremoteobjects-gettingstarted.html#
class Telephonebook : QObject
{
QObject
signals:
void dataChanged();
public:
QVector<QPair<QString, QString> > entries;
Telephonebook();
void addNumber(const QString& name, const QString& number)
{
entries.push_back(QPair<QString,QString> (name,number) );
emit dataChanged();
}
};
//how can you synchronize entries with a remote server when dataChanged is emitted?