漫游猫认证
阻塞就是说 accept() 执行时会一直停留在此调用中,直到返回正确的 connfd 前,不会执行 accept() 之后的代码。
非阻塞就是说 accept() 执行时会立即返回结果,成功就返回正确的 connfd ,失败就返回相应错误码。 相应的代码就要不停的 accept() ,并处理成功和失败的情况,但是因为 accept() 能快速返回结果,程序就很好的立即这个间隙,做此其他更有意义的事件。上面描述的过程并不完全准确,具体原理建议阅读 UNIX网络编程 (豆瓣)