exopy.tasks.tasks.shared_resources module¶
Thread safe object to use in tasks.
-
class
exopy.tasks.tasks.shared_resources.
SharedCounter
[source]¶ Bases:
atom.atom.Atom
Thread-safe counter object.
-
count
¶ Current count of the counter. User should not manipulate this directly.
-
-
class
exopy.tasks.tasks.shared_resources.
SharedDict
(default=None, **kwargs)[source]¶ Bases:
atom.atom.Atom
Dict wrapper using a lock to protect access to its values.
- Parameters
default (
callable
, optional) – Callable to use as argument for defaultdict, if unspecified a regular dict is used.
-
class
exopy.tasks.tasks.shared_resources.
ResourceHolder
(default=None, **kwargs)[source]¶ Bases:
exopy.tasks.tasks.shared_resources.SharedDict
Base class for storing resources and handling releases and restting.
-
priority
¶ Priority determining in which order resources will be released. Smallest values will be released earlier.
-
-
class
exopy.tasks.tasks.shared_resources.
ThreadPoolResource
(default=<class 'list'>, **kwargs)[source]¶ Bases:
exopy.tasks.tasks.shared_resources.ResourceHolder
Resource holder specialized to handle threads grouped in pools.
-
priority
¶ A value of type int.
By default, ints are strictly typed. Pass strict=False to the constructor to enable int casting for longs and floats.
-
-
class
exopy.tasks.tasks.shared_resources.
InstrsResource
(default=None, **kwargs)[source]¶ Bases:
exopy.tasks.tasks.shared_resources.ResourceHolder
Resource holder specialized to handle instruments.
Each driver instance should be stored as a 2-tuple with its associated starter. (driver, starter)
-
class
exopy.tasks.tasks.shared_resources.
FilesResource
(default=None, **kwargs)[source]¶ Bases:
exopy.tasks.tasks.shared_resources.ResourceHolder
Resource holder specialized in handling standard file descriptors.