the maximum time allowed before the policy expires. While the application can express this time in any units they desire, the class truncates to milliseconds.
typename DurationRep
a placeholder to match the Rep tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the underlying arithmetic type used to store the number of ticks. For our purposes it is simply a formal parameter.
typename DurationPeriod
a placeholder to match the Period tparam for duration's type. The semantics of this template parameter are documented in std::chrono::duration<>. In brief, the length of the tick in seconds, expressed as a std::ratio<>. For our purposes it is simply a formal parameter.
[[["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-08-14 UTC."],[[["\u003cp\u003eThe webpage details the \u003ccode\u003eInstancesLimitedTimeRetryPolicy\u003c/code\u003e, a retry mechanism for \u003ccode\u003eInstancesConnection\u003c/code\u003e in the Google Cloud C++ client library.\u003c/p\u003e\n"],["\u003cp\u003eThe policy halts retries if a non-transient error is encountered or if the total retry time exceeds a predefined duration.\u003c/p\u003e\n"],["\u003cp\u003eTransient errors, specifically \u003ccode\u003ekUnavailable\u003c/code\u003e status codes, are handled by this retry policy to potentially allow operations to complete successfully.\u003c/p\u003e\n"],["\u003cp\u003eThe class provides constructors to specify the maximum duration, and methods to manage the retry process, including determining if the retry limit has been reached and classifying errors as transient or permanent.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version available for the \u003ccode\u003eInstancesLimitedTimeRetryPolicy\u003c/code\u003e is \u003ccode\u003e2.37.0-rc\u003c/code\u003e, with a comprehensive list of previous versions also provided, descending to \u003ccode\u003e2.11.0\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,["# Class InstancesLimitedTimeRetryPolicy (2.42.0-rc)\n\nVersion latestkeyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/appengine/latest/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.41.0](/cpp/docs/reference/appengine/2.41.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.40.0](/cpp/docs/reference/appengine/2.40.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.39.0](/cpp/docs/reference/appengine/2.39.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.38.0](/cpp/docs/reference/appengine/2.38.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.37.0](/cpp/docs/reference/appengine/2.37.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.36.0](/cpp/docs/reference/appengine/2.36.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.35.0](/cpp/docs/reference/appengine/2.35.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.34.0](/cpp/docs/reference/appengine/2.34.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.33.0](/cpp/docs/reference/appengine/2.33.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.32.0](/cpp/docs/reference/appengine/2.32.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.31.0](/cpp/docs/reference/appengine/2.31.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.30.0](/cpp/docs/reference/appengine/2.30.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.29.0](/cpp/docs/reference/appengine/2.29.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.28.0](/cpp/docs/reference/appengine/2.28.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.27.0](/cpp/docs/reference/appengine/2.27.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.26.0](/cpp/docs/reference/appengine/2.26.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.25.1](/cpp/docs/reference/appengine/2.25.1/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.24.0](/cpp/docs/reference/appengine/2.24.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.23.0](/cpp/docs/reference/appengine/2.23.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.22.1](/cpp/docs/reference/appengine/2.22.1/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.21.0](/cpp/docs/reference/appengine/2.21.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.20.0](/cpp/docs/reference/appengine/2.20.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.19.0](/cpp/docs/reference/appengine/2.19.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.18.0](/cpp/docs/reference/appengine/2.18.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.17.0](/cpp/docs/reference/appengine/2.17.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.16.0](/cpp/docs/reference/appengine/2.16.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.15.1](/cpp/docs/reference/appengine/2.15.1/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.14.0](/cpp/docs/reference/appengine/2.14.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.13.0](/cpp/docs/reference/appengine/2.13.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.12.0](/cpp/docs/reference/appengine/2.12.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy)\n- [2.11.0](/cpp/docs/reference/appengine/2.11.0/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesLimitedTimeRetryPolicy) \nA retry policy for [`InstancesConnection`](/cpp/docs/reference/appengine/latest/classgoogle_1_1cloud_1_1appengine__v1_1_1InstancesConnection) based on elapsed time. \nThis policy stops retrying if:\n\n- An RPC returns a non-transient error.\n- The elapsed time in the retry loop exceeds a prescribed duration.\n\nIn this class the following status codes are treated as transient errors:\n\n- [`kUnavailable`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud_1a90e17f75452470f0f3ee1a06ffe58847.html)\n\nConstructors\n------------\n\n### InstancesLimitedTimeRetryPolicy(std::chrono::duration\\\u003c DurationRep, DurationPeriod \\\u003e)\n\nConstructor given a `std::chrono::duration\u003c\u003e` object. \n\n###### See Also\n\n\u003chttps://en.cppreference.com/w/cpp/chrono/duration\u003e for more information about `std::chrono::duration`.\n\n### InstancesLimitedTimeRetryPolicy(InstancesLimitedTimeRetryPolicy \\&\\&)\n\n### InstancesLimitedTimeRetryPolicy(InstancesLimitedTimeRetryPolicy const \\&)\n\nFunctions\n---------\n\n### maximum_duration() const\n\n### virtual OnFailure(Status const \\&)\n\n### virtual IsExhausted() const\n\n### virtual IsPermanentFailure(Status const \\&) const\n\n### virtual clone() const\n\nCreates a new instance of the policy, reset to the initial state.\n\nType Aliases\n------------\n\n### BaseType\n\n**Alias Of** : `InstancesRetryPolicy`"]]