This commit is contained in:
The Bears
2025-11-06 15:22:07 -05:00
parent 47871c5370
commit e03cc13d2b
4 changed files with 421 additions and 21 deletions

View File

@@ -69,7 +69,8 @@ def start_system():
kafka_results_queue = multiprocessing.Queue()
# Create threading queues for each camera
for cam, details in cameras_config.items():
details['msg_queue'] = queue.Queue(maxsize=1)
# details['msg_queue'] = queue.Queue(maxsize=1)
details['msg_queue'] = multiprocessing.Queue(maxsize=1)
details['img_scoring_queue'] = img_scoring_queue
details['kafka_queue'] = kafka_results_queue
@@ -88,7 +89,8 @@ def start_system():
# Start camera threads
camera_threads = []
for cam_name, details in cameras_config.items():
thread = threading.Thread(target=start_snap_manager, kwargs=details)
# thread = threading.Thread(target=start_snap_manager, kwargs=details)
thread = multiprocessing.Process(target=start_snap_manager, kwargs=details)
thread.daemon = True
thread.start()
camera_threads.append(thread)
@@ -122,12 +124,13 @@ def start_system():
msg_counts[cam_name] += 1
logger.debug(f"Auto-sent 'get' to {cam_name}")
time.sleep(0.25)
except queue.Full:
pass # Queue full, skip
except Exception as e:
logger.error(f"Error auto-sending to {cam_name}: {e}")
time.sleep(1) # Small delay
except KeyboardInterrupt:
logger.info("Shutting down...")
# Send exit messages to all cameras