摘要:
分类: 1、Winsock固有模型,阻塞模型和非阻塞模型; 使用socket -> bind ->listen->accpet ->recv ->closesocket即为阻塞模型;正常情况下(函数返回正确),直到数据传输完程序才会结束。 问题:会出现主程序假死的情况,数据未传输完,但是断网了。导致recv函数一直处于阻塞状态下。 解决方法: 使用开线程的方法,如:accpet得到一个新的socket链接,则新开一个读线程和计算线程。这样,既能解决假死的问题,还能满足多链接申请的需求。 问题:开线程的方法存在缺点,即来一个链接申明要开两个线程,系统开销巨大... 阅读全文