title: LwIP - netconn API - Send a TCP packet while the process is blocked?
body: <p>I am using FreeRTOS + <strong>LwIP</strong> to develop a Ethernet based bedside nurse call device. After reading some examples and document, I want to use the LwIP's <strong>netconn API</strong> to send and receive data under TCP, because I am not familiar with the BSD style API and the raw API may be difficult.</p>
  
  <p>I know the <code>netconn_accept()</code> function will block the process until a connection request from a remote host arrived, and the <code>netconn_recv()</code> function will also block the process while waiting for data to arrive...both of these functions will <strong>block</strong> the process, it is good for a server receiving data, however, my device also need to act as a client which need to trigger a 'call' to the nurse center when the patient press a button. <strong>So how can it initiates to send a TCP packet while it is also waiting a connection(blocking the process) from the remote host?</strong></p>
  
  <p>I need to send TCP because I have to use SIP(Session Initiation Protocol) to initiate a call, the it should be reliable because it is a medical device. Thank you very much</p>
  
  <hr>
  
  <p>@Kyle Heironimus , @werewindle I add you to my question because I know you have experience on LwIP, hope that will not make you inconvenience and hope that you can help, thank you.</p>