gniazdo nieblokujące, błąd jest zawsze

sock.setblocking(0)
try:
    data = sock.recv(1024)
 except socket.error, e:
    if e.args[0] == errno.EWOULDBLOCK: 
          print 'EWOULDBLOCK'
else:            
   if not data:   #recv over
      sock.close()
      print 'close================='       
   else:
      print 'recv ---data---------'
      poem += data

cały powyższy kod jest w pętlinon-blocking socket(po prostu chcę przetestować „gniazdo nieblokujące”), aby uzyskać dane. Ale zawsze drukuj „EWOULDBLOCK”, nie wiem dlaczego?

questionAnswers(2)

yourAnswerToTheQuestion