What does Python's socket.recv() return for non-blocking sockets if no data is received until a timeout occurs? What does Python's socket.recv() return for non-blocking sockets if no data is received until a timeout occurs? python python