Nursery: Initial integration
StimulusProducer: syncAwaitAllSettlements should pump caller io_context
This commit is contained in:
@@ -577,11 +577,11 @@ UdpCommandDemuxer::waitForCommandResponseCReq(
|
||||
* we will consider the command to have failed.
|
||||
*/
|
||||
boost::asio::io_context &ioContext = componentThread->getIoContext();
|
||||
std::optional<std::shared_ptr<boost::asio::deadline_timer>> raceTimer;
|
||||
boost::asio::deadline_timer raceTimer(ioContext);
|
||||
auto timerAwaiter = adapters::boostAsio::getDeadlineTimerAReqAwaiter(
|
||||
ioContext,
|
||||
boost::posix_time::milliseconds(timeoutMs),
|
||||
raceTimer);
|
||||
raceTimer,
|
||||
boost::posix_time::milliseconds(timeoutMs));
|
||||
auto responseInvoker = waitForCommandResponseCReq(cmdSet, cmdId, deviceIp);
|
||||
|
||||
static constexpr int timerMemberSettlementIndex = 0;
|
||||
@@ -598,8 +598,8 @@ UdpCommandDemuxer::waitForCommandResponseCReq(
|
||||
|
||||
if (timerWonFirst) {
|
||||
cancelPendingCommandWait(cmdSet, cmdId, deviceIp);
|
||||
} else if (raceTimer) {
|
||||
(*raceTimer)->cancel();
|
||||
} else {
|
||||
raceTimer.cancel();
|
||||
}
|
||||
|
||||
/** Group member adapter coros are fire-and-forget; keep group alive until
|
||||
|
||||
Reference in New Issue
Block a user