Debugging application level code and timeouts

Working on my app, I need to run in debug mode, but as soon as I place a breakpoint, (or run instrument on macOS to find memory leaks which slows down code) the stream times out and cannot be restarted without our restarting the applications.

Is there a some sort of timeout configuration in Aravis, or in the GigE camera that would allow me to stop, step and continue the applications ? How do people go about debugging ? printf ?

Thanks for your help, and for great piece of software.


Most of the time, I’m using printf, and if the debug output makes sense in the long time, I’m using Aravis debug output functions (src/arvdevugprivate.h).

The camera control is gained and kept by a regular read of a dedicated register. I Aravis does not read this register before a configurable timeout, the control is lost.

You can set this timeout to a longer value using GevHeartbeatTimeout feature, or disable it using GevGVCPHeartbeatDisable feature. Please not these features are not always available.

Hope it helps.


Thanks, that certainly looks promising, I’ll give. it a try.