Skip to content
Snippets Groups Projects
Commit 8dcd9254 authored by Roberto Borghes's avatar Roberto Borghes
Browse files

Bug fix: corrected the internal data buffer size calculation

parent 6028b879
No related branches found
No related tags found
No related merge requests found
......@@ -112,14 +112,18 @@ class donkiBuffer(threading.Thread):
self.trg_range[data_name] = [1,1]
idx = 0
for dd in data_in:
if sys.getsizeof(self.dbuffers[data_name]) > self.max_size:
if hasattr(dd, "nbytes"):
# numpy ndarray case
buffersize = len(self.dbuffers[data_name]) * dd.nbytes
else:
buffersize = len(self.dbuffers[data_name]) * sys.getsizeof(dd)
if buffersize > self.max_size:
try:
if (self.trg_range[data_name][0]) in (self.dbuffers[data_name]).keys():
del self.dbuffers[data_name][self.trg_range[data_name][0]]
del self.dbuffers[data_name][self.trg_range[data_name][0]]
self.trg_range[data_name][0] = self.trg_range[data_name][0] + 1
except:
traceback.print_exc()
self.dbuffers[data_name][trg_in+idx] = dd
self._last_trigger = max(self._last_trigger,trg_f)
self.lock.release()
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment