Is there a list of functions that "Block" (or sometimes referred to as "Blocking Threads") ???
A situation I have and have been struggling with (and not knowing it) is that redoing a long running project of mine (working with serial port devices, stepper motors etc.) that I need to make things faster. (Much faster than the serial port "General Rule of Thumb - Do not expect responses less than every 100ms")
No this old rule of thumb could be badly held because it came from my VB days and not knowing any better so I set off to see if reliably things can be done faster (since may companies claim "Real time" sort of things with serial ports and etc.)
Anyways, a problem I have been chasing is that so called "Randomly" the program just stops. (and I mean STOPS, no errors, no events, no messages, no nada) and I figured this out by logging every function and each logg over and over stops within a couple of functions (but not the same function every time)
The common link is it is always at the point of a sleep (PB, Or API) that my next line does not logg, and the program is halted. So I have to ask if the docs are incomplete? or am I missing something? or if Sleep is a blocking call?
I am working on coming up with a demo of my problem, but hoping someone can point me at how to know something is a "Blocking function" and if it is, then how do you unblock it???
A situation I have and have been struggling with (and not knowing it) is that redoing a long running project of mine (working with serial port devices, stepper motors etc.) that I need to make things faster. (Much faster than the serial port "General Rule of Thumb - Do not expect responses less than every 100ms")
No this old rule of thumb could be badly held because it came from my VB days and not knowing any better so I set off to see if reliably things can be done faster (since may companies claim "Real time" sort of things with serial ports and etc.)
Anyways, a problem I have been chasing is that so called "Randomly" the program just stops. (and I mean STOPS, no errors, no events, no messages, no nada) and I figured this out by logging every function and each logg over and over stops within a couple of functions (but not the same function every time)
The common link is it is always at the point of a sleep (PB, Or API) that my next line does not logg, and the program is halted. So I have to ask if the docs are incomplete? or am I missing something? or if Sleep is a blocking call?
I am working on coming up with a demo of my problem, but hoping someone can point me at how to know something is a "Blocking function" and if it is, then how do you unblock it???
Comment