在bsd系统中，这样做可能会把io阻塞，因为这里控制是否返回0的实际上是对端的tcp buffer是否满了。
在linux系统中，不会出现返回0 (对应的返回是-1, errno = ...)