Hi Wolfgang,

Can this be confirmed or is rt_dev_recvfrom() behaving incorrectly in my case?

rt_dev_recvfrom() reads message frames (one at a time) from an internal socket buffer (there is actually a kernel configuration option to configure the size). If no messages are available, it will block by default, but it can also be used in non-blocking mode by using the flag MSG_DONTWAIT. It seems, that your application is trying to read messages periodically in polling mode. Either you do reading and buffering in your own thread as you suggested above or you use rt_dev_recvfrom() in non-blocking mode.

Thanks for this. I have not tried it yet but I was looking for that flag in the hope that something like this would exist. I thought I had seen something like it but when I tried to locate it yesterday I failed. Don;t worry it is there, I just checked. Sorry.

Where can I find the buffer size option in the kernel config menu? What is the default size?

Thanks again.

Roland


Wolfgang.



_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to