Am 17.11.2021 um 18:16 schrieb Grant Edwards:
My (newly generated 2.1.3) documentation says that
LWIP_NETCONN_FULLDUPLEX "allows reading from one thread, writing from
a 2nd thread and closing from a 3rd thread". [And the "really alpha"
statement is indeed gone.]

I assume that does not imply that recv/send/write are renntrant such
that two threads could write to a socket/netconn at the same time? Two
sockets reading at the same time is less common, but would be another
example.

This situation doesn't really make much sense for TCP, but I have seen
applications where it is done for UDP and raw Ethernet.

I'd have to re-check the sources, but it should not be a problem for UDP
and raw I guess (as long as CORE_LOCKING is enabled): the problems
mainly come from TCP writes that can't be executed in one batch (so
you'll have to wait for more window or buffers being available). UDP TX
is lock, send, unlock, so that should work. And if it doesn't, it should
be easy to fix.

Regards,
Simon

_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to