diff --git a/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/lib/rpc/rpc_connection.h b/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/lib/rpc/rpc_connection.h index 26946bc65f..61d62e9c12 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/lib/rpc/rpc_connection.h +++ b/hadoop-hdfs-project/hadoop-hdfs-native-client/src/main/native/libhdfspp/lib/rpc/rpc_connection.h @@ -205,8 +205,9 @@ void RpcConnectionImpl::FlushPendingRequests() { req->timer().expires_from_now( std::chrono::milliseconds(options_.rpc_timeout)); - req->timer().async_wait(std::bind( - &RpcConnection::HandleRpcTimeout, this, req, _1)); + req->timer().async_wait([shared_this, this, req](const ::asio::error_code &ec) { + this->HandleRpcTimeout(req, ec); + }); asio::async_write(next_layer_, asio::buffer(*payload), [shared_this, this, payload](const ::asio::error_code &ec,