mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-05-01 10:34:06 +08:00
Fixed timeouts in uavcan_linux::BlockingServiceClient
This commit is contained in:
parent
476d8b8513
commit
9d36eef359
@ -67,9 +67,21 @@ public:
|
||||
* Returns negative error code.
|
||||
*/
|
||||
int blockingCall(uavcan::NodeID server_node_id, const typename DataType::Request& request)
|
||||
{
|
||||
return blockingCall(server_node_id, request, Super::getDefaultRequestTimeout());
|
||||
}
|
||||
|
||||
/**
|
||||
* Performs a blocking service call using the specified timeout. Please consider using default timeout instead.
|
||||
* Use @ref getResponse() to get the actual response.
|
||||
* Returns negative error code.
|
||||
*/
|
||||
int blockingCall(uavcan::NodeID server_node_id, const typename DataType::Request& request,
|
||||
uavcan::MonotonicDuration timeout)
|
||||
{
|
||||
const auto SpinDuration = uavcan::MonotonicDuration::fromMSec(2);
|
||||
setup();
|
||||
Super::setRequestTimeout(timeout);
|
||||
const int call_res = Super::call(server_node_id, request);
|
||||
if (call_res >= 0)
|
||||
{
|
||||
@ -85,18 +97,6 @@ public:
|
||||
return call_res;
|
||||
}
|
||||
|
||||
/**
|
||||
* Performs a blocking service call using the specified timeout. Please consider using default timeout instead.
|
||||
* Use @ref getResponse() to get the actual response.
|
||||
* Returns negative error code.
|
||||
*/
|
||||
int blockingCall(uavcan::NodeID server_node_id, const typename DataType::Request& request,
|
||||
uavcan::MonotonicDuration timeout)
|
||||
{
|
||||
Super::setRequestTimeout(timeout);
|
||||
return blockingCall(server_node_id, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether the last blocking call was successful.
|
||||
*/
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user