Hi,
I would like to use the BSD sockets, but the accept function seems unusable! It will block if I am using RTX. I am not using round robin, so if I make a call to accept the whole system will stall.
I must be missing something here as it would be quite stupid for it to be impossible to come out of accept if there are no pending connections.
http://www.keil.com/support/man/docs/rlarm/rlarm_accept.htm says blocking mode is enabled if RTX is detected...
Of course, this is a normal behavior. Each BSD socket is served by it's own task. The tasks communicate via intertask communication. That is a good application design concept.
If you need other stuff to handle, simply create a different task for this job.
The disadvantage is, of course, the need for extra stacks for applications that needs more than one socket.
I see! I didnt realize that was how you were supposed to use BSD sockets! Thanks
http://www.keil.com/support/man/docs/rlarm/rlarm_ioctlsocket.htm
Perfect! Thanks
I was looking at the BSD functionality for a while, never saw that function listed!!!
It is new, added recently.
I mean, I was looking yesterday. Is there a new update?
"It is new, added recently."
Very recently - I've just done a search of the recently released 4.22a and I couldn't find the function in any include file or the help text.
It was not yet implemented in MDK release 4.22a
If you want the updated libraries, then please send a request to support and ask for an update.