I have a single Ethernet Client task started by the TCP/IP initialization callback that opens up a socket every ~15 seconds, sends data to the server, receives data from the server, and closes the socket.
My sequence of commands is:
fdOpenSession
while(1)
socket (AF_INET, SOCK_STREAM, IPPROTO_TCP)
connect
send
recv
shutdown (tried with and without this)
fdClose
Problem: Every “socket” statement allocates a new 512 byte socket until there is no available heap available.
Do I have to start a task that will fdOpenSession/fdCloseSession for each transaction?
Is there another way to accomplish this task?
Version:
tirtos_1_01_00_25 (can’t update as I am using a Stellaris part (LM3S9B90) and this is the last release to support it)