Messaging.IpcQueue.Receive does not respect timeout.
The ABB.Robotics.Controllers.Messaging.IpcQueue.Receive does not respect the first parameter - timeout. I tried 500 and a 1000ms, and the instruction is blocked. I am running it on a Windows 8 x64 OS. My RobotStudio is version 5.60.5731.84.
I have currently bypassed this by placing the receive inside a thread and then aborting the thread periodically but I would like to know how to get the timeout to work.
0
Comments
-
Sorry, I can't answer your question, but I'm experiencing the same thing... I have a button to test message receive, and it pops up immediately with timeout instead of respecting my 5000 mS timeout. My code is very similar to the example...Edit: Now that my code actually works, if there is no message in the queue and I call myQueue.Receivve(timeout,recMessage), it hangs my application indefinitely.I need to read messages from the robot "continuously" during my process for logging purposes (one message every 4 seconds or so), and I don't think spawning a new process and killing it if no data is available is a legitimate solution.Post edited by Evanmj on0
-
This issue still persists after 3 years
Timeout is not respected when waiting for messages and the thread is blocked indefinitely by IpcQueue.Receive. This makes it impossible to safely stop the receiver thread and forces you to kill it using Thread.Abort().
Using SDK 6.07.01 and Windows 10 x640
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 250 ScreenMaker
- 2.8K Robot Controller
- 316 IRC5
- 61 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 800 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings