[#BloombergLP-bdlmt-Throttle-requestPermission-0da] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlmt.adoc[bdlmt]::xref:BloombergLP/bdlmt/Throttle.adoc[Throttle]::requestPermission :relfileprefix: ../../../ :mrdocs: `requestPermission` overloads == Synopses Declared in `<bdlmt_throttle.h>` Return `true` if the time debt incurred by taking the indicated action(s) would _not_ exceed the maximum allowed time debt configured for this `Throttle` object (`nanosecondsPerAction * maxSimultaneousActions`), and `false` otherwise. Optionally specify `now` indicating the current time of the system clock for which this object is configured (`now` is a offset from that clocks epoch). If `now` is not supplied, the current time is obtained from the configured system clock. Optionally specify `numActions` indicating the number of actions requested. If `numActions` is not supplied, one action is requested. If this function returns `true` then `numActions * nanosecondsPerAction` is added to the time debt accumulated by this component. The behavior is undefined unless this throttle has been initialized (either by calling an overload of `initialize` or using one of the `BDLMT_THROTTLE_INIT*` macros), `0 < numActions`, (`numActions <= maxSimultaneousActions` or `0 == maxSimultaneousActions`), and the value of `now`, if specified, can be expressed in nanoseconds as a 64‐bit signed integer. Note that `requestPermissionIfValid`, unlike these methods, does not have any preconditions on the value of `numActions`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- bool xref:BloombergLP/bdlmt/Throttle/requestPermission-0db.adoc[requestPermission](); ---- [.small]#xref:BloombergLP/bdlmt/Throttle/requestPermission-0db.adoc[_» more..._]# Same as the preceding overload, for the specified `numActions`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- bool xref:BloombergLP/bdlmt/Throttle/requestPermission-07.adoc[requestPermission](int numActions); ---- [.small]#xref:BloombergLP/bdlmt/Throttle/requestPermission-07.adoc[_» more..._]# Same as the preceding overload, using the specified `now`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- bool xref:BloombergLP/bdlmt/Throttle/requestPermission-0a.adoc[requestPermission](xref:BloombergLP/bsls/TimeInterval.adoc[bsls::TimeInterval] const& now); ---- [.small]#xref:BloombergLP/bdlmt/Throttle/requestPermission-0a.adoc[_» more..._]# Same as the preceding overload, using the specified `now`. [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- bool xref:BloombergLP/bdlmt/Throttle/requestPermission-0b.adoc[requestPermission]( int numActions, xref:BloombergLP/bsls/TimeInterval.adoc[bsls::TimeInterval] const& now); ---- [.small]#xref:BloombergLP/bdlmt/Throttle/requestPermission-0b.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#