I was never a fan of “on the spot” debugging, I’m more an analyst when it comes to finding problems with the code, I put some printf() here and there, and I look how the code flows.
As my current job has to run on an embedded ARM system, I was interested in making sure the code was perfectly fine before going to try it on the actual board as it’s not exactly performant, so I tried to make more use of gdb as debugger to ensure the reliability of my code.
Well it seems like mine was a big big error. I passed the night debugging my code, trying to find why I asks for some threads to be cancelled and they aren’t, then today I tried running the code outside gdb, and it works just great.
I think I’ll stay with less intrusive debugging for the rest of my life 🙂