add timeouts in ipc client init

This commit is contained in:
Cyril Anisimov 2025-02-08 16:34:04 +01:00
parent ec132ac96c
commit 915c8f46c5

View file

@ -1,5 +1,8 @@
#include "ipcclient.h"
#include <QRemoteObjectNode>
#include <chrono>
#include <thread>
IpcClient *IpcClient::m_instance = nullptr;
@ -44,6 +47,12 @@ bool IpcClient::init(IpcClient *instance)
Instance()->m_ClientNode.addClientSideConnection(Instance()->m_localSocket.data());
Instance()->m_ipcClient.reset(Instance()->m_ClientNode.acquire<IpcInterfaceReplica>());
std::this_thread::sleep_for(std::chrono::seconds(2)); //< wait until client is ready
if (!Instance()->m_ipcClient) {
qFatal() << "IpcClient is not ready!";
}
Instance()->m_ipcClient->waitForSource(1000);
if (!Instance()->m_ipcClient->isReplicaValid()) {
@ -51,6 +60,12 @@ bool IpcClient::init(IpcClient *instance)
}
Instance()->m_Tun2SocksClient.reset(Instance()->m_ClientNode.acquire<IpcProcessTun2SocksReplica>());
std::this_thread::sleep_for(std::chrono::seconds(5)); //< wait until client is ready
if (!Instance()->m_Tun2SocksClient) {
qFatal() << "IpcClient::m_Tun2SocksClient is not ready!";
}
Instance()->m_Tun2SocksClient->waitForSource(1000);
if (!Instance()->m_Tun2SocksClient->isReplicaValid()) {