started to implement fullduplex sockets/netconns (note that this is highly unstable yet!)

This commit is contained in:
sg
2015-02-11 21:18:15 +01:00
parent 04b4971d8c
commit 7ff9825f55
3 changed files with 67 additions and 4 deletions

View File

@@ -1497,6 +1497,18 @@
#define LWIP_NETCONN_SEM_PER_THREAD 0
#endif
/** LWIP_NETCONN_FULLDUPLEX==1: Enable code that allows reading from one thread,
* writing from a 2nd thread and closing from a 3rd thread at the same time.
* ATTENTION: This is currently really alpha! Some requirements:
* - LWIP_NETCONN_SEM_PER_THREAD==1 is required to use one socket/netconn from
* multiple threads at once
* - sys_mbox_free() has to unblock receive tasks waiting on recvmbox/acceptmbox
* and prevent a task pending on this during/after deletion
*/
#ifndef LWIP_NETCONN_FULLDUPLEX
#define LWIP_NETCONN_FULLDUPLEX 0
#endif
/*
------------------------------------
---------- Socket options ----------