FreeRTOS+TCP. Creating new socket after FreeRTOS_closesocket()
Hello!
Does I understed correct after FreeRTOSclosesocket() (for example when connection is lost) I must to create new socket with FreeRTOSsocket() to reopen connection, and I must not to use old socket value. Does this kind of socket creation uses dinamic memory allocation even I need only one open socket? Does it could couse memory fragmentation if I use heap_1?
Regards,
Vasilij
FreeRTOS+TCP. Creating new socket after FreeRTOS_closesocket()
Once a socket is closed it cannot be used again. If you want another
socket then you need to create it again.
The socket is allocated using a call to pvPortMallocSocket(). By
default that will call pvPortMalloc(), but you can re-define the
behaviour by #defining pvPortMallocSocket() in FreeRTOSIPConfig.h to do
whatever you want it to do. Fro example:
define pvPortMallocSocket( x ) MyStaticAllocator( x )
(where MyStaticAllocator() would be something you provided). heap1 cannot free memory, so don’t use that. Heap4 will guard against memory fragmentation as much as it can.FreeRTOS+TCP. Creating new socket after FreeRTOS_closesocket()
Thank you a lot for explanation! It helped.