Control the Cloud C++ client library behavior with respect to polling on long running operations.
Some operations in Cloud services return a google.longrunning.Operation object. As their name implies, these objects represent requests that may take a long time to complete, in some cases operations may take tens of seconds or even 30 minutes to complete.
The Cloud C++ client libraries models these long running operations as a google::cloud::future<StatusOr<T>>, where T represents the final result of the operation. In the background, the library polls the service until the operation completes (or fails) and then satisfies the future.
This class defines the interface for policies that control the behavior of this polling loop.
This function is called at the beginning of the polling loop. Policies that are based on relative time should restart their timers when this function is called.
Returns
Type
Description
std::unique_ptr< PollingPolicy >
OnFailure(Status const &)
A callback to indicate that a polling attempt failed.
This is called when a polling request fails. Note that this callback is not invoked when the polling request succeeds with "operation not done".
Parameter
Name
Description
status
Status const &
Returns
Type
Description
bool
true if the failure should be treated as transient and the polling loop should continue.
WaitPeriod()
How long should the polling loop wait before trying again.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-02 UTC."],[[["The content outlines the different versions of the `PollingPolicy` class within the Google Cloud C++ client library, ranging from version 2.10.1 to the latest release candidate 2.37.0-rc."],["This `PollingPolicy` class manages how the client library handles long-running operations that return a `google.longrunning.Operation` object, polling until completion or failure."],["The class includes functions like `clone()` for creating copies of the policy and `OnFailure()` to handle polling attempt failures, providing the option to continue polling if the failure is transient."],["`WaitPeriod()` is a function that determines the duration of the wait time between each polling request."],["The provided content also gives a link to a external document that gives more information about long running operations."]]],[]]