Note that serialGetchar (wiringSerial) will block for (up to) 10s if no character is available.
(From function header documentation)
And this fact (wiringSerial.c:95)
options.c_cc [VMIN] = 0 ;
options.c_cc [VTIME] = 100 ; // Ten seconds (100 deciseconds)
The effect is that the emulator will be blocked and no other processes may run (for up to 10 s)!
(unless there are more cores than one (online))
You may want to use driver_select. Should probably set the VTIME=0 to be sure.
A little plug:
There is a project using threads to get some exotic uart features, a bit heavy, but is working (even on windows!)
(Still lack documentation but has a simple api and is simple to use, nice packeting options for example)
On 8 okt 2012, at 22:27, Klas Johansson <klas.johans...@gmail.com> wrote:
"Installing applications can lead to corruption over time. Applications gradually write over each other's libraries, partial upgrades occur, user and system errors happen, and minute changes may be unnoticeable and difficult to fix"
erlang-questions mailing list