Loading cloudcontrol/common/client/tags.py +22 −4 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ import inspect import logging import weakref import threading from functools import partial from functools import partial, update_wrapper from itertools import chain from collections import defaultdict Loading Loading @@ -245,10 +245,28 @@ def refresh(value): return decorator def background(func): def background(max_concurrent=None): def background_decorator(func): func.background = True semaphore = threading.Semaphore(max_concurrent) if max_concurrent else None if semaphore is not None: if not len(inspect.getargspec(func).args): def wrapper(): with semaphore: return func() else: def wrapper(dom): with semaphore: return func(dom) wrapper = update_wrapper(wrapper, func) return wrapper else: return func return background_decorator def get_tags(tags_dict, tags=None): """Helper to get tags. Loading Loading
cloudcontrol/common/client/tags.py +22 −4 Original line number Diff line number Diff line Loading @@ -17,7 +17,7 @@ import inspect import logging import weakref import threading from functools import partial from functools import partial, update_wrapper from itertools import chain from collections import defaultdict Loading Loading @@ -245,10 +245,28 @@ def refresh(value): return decorator def background(func): def background(max_concurrent=None): def background_decorator(func): func.background = True semaphore = threading.Semaphore(max_concurrent) if max_concurrent else None if semaphore is not None: if not len(inspect.getargspec(func).args): def wrapper(): with semaphore: return func() else: def wrapper(dom): with semaphore: return func(dom) wrapper = update_wrapper(wrapper, func) return wrapper else: return func return background_decorator def get_tags(tags_dict, tags=None): """Helper to get tags. Loading