Hi All

    I got a problem about handle the passive close. After connect to the 
server, I have a Client thread like this:

// Client thread
uint8 buff[buff_LEN];
......
for(;;) {
......
llen = lwip_recv( sockClient, buff, buff_LEN, 0 ); // wait for data
if( llen ) {
// some data recived, handle data
}
// do other works...
......
}
......

   It works good except this problem:
   I found that lwip_recv() will suspend Client thread at sys_arch_mbox_fetch() 
in function netconn_recv() of api_lib.c line 347, wait the message forever. In 
this situation, I have no idea how to handle the passive close. The 
tcp_thread() have acked the first FIN, change the tcp_pcb->state to CLOSE_WAIT.

   I'm less experence in multi-threaded programing, If there is any other way 
to implement my Client thread, please tell me, thanks.


      ___________________________________________________________ 
  好玩贺卡等你发,邮箱贺卡全新上线! 
http://card.mail.cn.yahoo.com/
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to