A Divendres, 20 de desembre de 2013, Philippe Gerum va escriure:
> On 12/19/2013 12:37 AM, Leopold Palomo-Avellaneda wrote:
> > Hi,
> >
> > I'm developing an application that need (as always) interchange data
between a realtime part and non-realtime.
> >
> > Looking on the documentation and surfing on the web I have found
interesting for my app the examples of xddp protocol. Some time ago, there was
an interesting mail about it [1].
> >
> > There, the original author ask one thing that I would like to be sure that
I understood. On the examples, the realtime thread uses the function
recvfrom() to receive data from the non-rt thread.
> >
> > In the mail, the original author asked about make recvfrom
> > call non-blocking in xddp context, and *Philippe Gerum* answered that
> > MSG_DONTWAIT should be set in flags.
> >
> > So, my question is that using that flag, some code like this:
> >
> >
> > /* Read back packets echoed by the regular thread */
> > ret = recvfrom(s, buf, sizeof(buf), 0, NULL, 0);
> > if(ret <= 0)
> > fail("recvfrom");
> >
> > recvfrom will not be blocked, but it will return 0?
> >
> > May I understood that if there's data on the sockect recvfrom will
> > return something and if no, it would not be blocked and return something?
> >
>
> Standard behavior when no data present: immediate return with ret = -1,
> errno = EWOULDBLOCK/EAGAIN.
Ok,
if you are writing some data (some bytes) in the socket, can I trust that
recvfrom will return -1 until ALL data is transferred?
Regards,
Leopold
--
--
Linux User 152692
Catalonia
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL:
<http://www.xenomai.org/pipermail/xenomai/attachments/20131220/e7764858/attachment.sig>
_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai