diff options
author | Brian Elliott <bdelliott@gmail.com> | 2013-05-09 23:50:21 +0000 |
---|---|---|
committer | Brian Elliott <bdelliott@gmail.com> | 2013-05-09 23:50:21 +0000 |
commit | d5e57e9ccf47ec7c6365efa36b509c260774bbc8 (patch) | |
tree | 5d3d5188fc9510c3586c0e16f108c04a240bc25a /openstack | |
parent | 3e0114f570d97c47b1b8eefce0bcd27146098b8d (diff) | |
download | oslo-d5e57e9ccf47ec7c6365efa36b509c260774bbc8.tar.gz oslo-d5e57e9ccf47ec7c6365efa36b509c260774bbc8.tar.xz oslo-d5e57e9ccf47ec7c6365efa36b509c260774bbc8.zip |
Add DynamicLoopCall timers to ThreadGroups
Change-Id: I99a67355a7af054c17d3f6807609dbb11ad40631
Diffstat (limited to 'openstack')
-rw-r--r-- | openstack/common/threadgroup.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/openstack/common/threadgroup.py b/openstack/common/threadgroup.py index 3558b73..6cafbaf 100644 --- a/openstack/common/threadgroup.py +++ b/openstack/common/threadgroup.py @@ -61,6 +61,13 @@ class ThreadGroup(object): self.threads = [] self.timers = [] + def add_dynamic_timer(self, callback, initial_delay=None, + periodic_interval_max=None, *args, **kwargs): + timer = loopingcall.DynamicLoopingCall(callback, *args, **kwargs) + timer.start(initial_delay=initial_delay, + periodic_interval_max=periodic_interval_max) + self.timers.append(timer) + def add_timer(self, interval, callback, initial_delay=None, *args, **kwargs): pulse = loopingcall.FixedIntervalLoopingCall(callback, *args, **kwargs) |