Thanks for the quick response.

Duplex communication is pretty important for my application.  Is there a
way to do it with one of the other APIs (e.g. the raw API)?

On 11/02/2013 23:09, "Simon Goldschmidt" <[email protected]> wrote:

>Shaun Crampton wrote:
>> I'm looking at lwIP for a new project and I'm trying to understand the
>> threading model for the socket-alike API.  Assuming I'm on a preemptive
>>OS
>> (Linux), is it safe to
>> 
>>   *   concurrently create multiple sockets in different threads
>
>Yes.
>
>>   *   for one single socket, call send in one thread and recv in another
>> thread (to enable duplex communication).
>
>No.
>
>> If it's not possible to do duplex communication in that way, is there a
>> way to do it?
>> 
>> If I've read the docs correctly, then I think it's up to my application
>>to
>> stop all threads using the socket before closing it, which is fair
>>enough.
>
>That way it would work, but it's not real full duplex then. It's quite
>hard to make a thread return from recv() once it's blocked there waiting
>for new data... You can always use select(), but there's no easy way
>(other than a loopback socket) to make select() return by application
>software if you're not using a timeout...
>
>
>Simon
>
>_______________________________________________
>lwip-users mailing list
>[email protected]
>https://lists.nongnu.org/mailman/listinfo/lwip-users


_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to