add timeouts in ipc client init
This commit is contained in:
parent
ec132ac96c
commit
915c8f46c5
1 changed files with 15 additions and 0 deletions
|
|
@ -1,5 +1,8 @@
|
||||||
#include "ipcclient.h"
|
#include "ipcclient.h"
|
||||||
#include <QRemoteObjectNode>
|
#include <QRemoteObjectNode>
|
||||||
|
#include <chrono>
|
||||||
|
#include <thread>
|
||||||
|
|
||||||
|
|
||||||
IpcClient *IpcClient::m_instance = nullptr;
|
IpcClient *IpcClient::m_instance = nullptr;
|
||||||
|
|
||||||
|
|
@ -44,6 +47,12 @@ bool IpcClient::init(IpcClient *instance)
|
||||||
Instance()->m_ClientNode.addClientSideConnection(Instance()->m_localSocket.data());
|
Instance()->m_ClientNode.addClientSideConnection(Instance()->m_localSocket.data());
|
||||||
|
|
||||||
Instance()->m_ipcClient.reset(Instance()->m_ClientNode.acquire<IpcInterfaceReplica>());
|
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);
|
Instance()->m_ipcClient->waitForSource(1000);
|
||||||
|
|
||||||
if (!Instance()->m_ipcClient->isReplicaValid()) {
|
if (!Instance()->m_ipcClient->isReplicaValid()) {
|
||||||
|
|
@ -51,6 +60,12 @@ bool IpcClient::init(IpcClient *instance)
|
||||||
}
|
}
|
||||||
|
|
||||||
Instance()->m_Tun2SocksClient.reset(Instance()->m_ClientNode.acquire<IpcProcessTun2SocksReplica>());
|
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);
|
Instance()->m_Tun2SocksClient->waitForSource(1000);
|
||||||
|
|
||||||
if (!Instance()->m_Tun2SocksClient->isReplicaValid()) {
|
if (!Instance()->m_Tun2SocksClient->isReplicaValid()) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue