summaryrefslogtreecommitdiff
path: root/kafka/streams/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'kafka/streams/utils.py')
-rw-r--r--kafka/streams/utils.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/kafka/streams/utils.py b/kafka/streams/utils.py
new file mode 100644
index 0000000..b0161dc
--- /dev/null
+++ b/kafka/streams/utils.py
@@ -0,0 +1,20 @@
+import threading
+
+
+class AtomicInteger(object):
+ def __init__(self, val=0):
+ self._lock = threading.Lock()
+ self._val = val
+
+ def increment(self):
+ with self._lock:
+ self._val += 1
+ return self._val
+
+ def decrement(self):
+ with self._lock:
+ self._val -= 1
+ return self._val
+
+ def get(self):
+ return self._val