02-26-2026 09:28 PM - edited 02-26-2026 09:32 PM
Hello everyone,
I've been working with Actor Framework for a couple of months now and am feeling more confident with it as of late. Unfortunately, I've been running into an issue with long delays in the time it takes to read data from the various devices in my system. I've put this off for some time, but I want to address it now.
System Overview
My system is deployed on a PXI RT target and has the following architecture:
A controller actor that launches multiple device actors
The controller uses a timer to periodically send read commands to each device actor
A base device actor class defines overridable methods for connect and read (both reentrant)
Each device actor currently performs its read in its Message Handling Loop (MHL)
I understand this is generally discouraged because it blocks message handling
I have begun experimenting with helper loops instead
The Problem
When communicating with multiple devices simultaneously:
However, when communicating with devices individually:
These individual read times match expectations.
Troubleshooting Performed
I’ve tried the following:
I can't exactly share my code here, but I hope what I've provided sets off some alarm bells for someone else. This issue has left me stumped for quite some time, and I'd love any insight into what may be causing this.
If anyone needs any more clarifying information, I'll try to answer ASAP.
Thank you all for your time and insight!