9494, 这我也不明白...
只有 WinSocket 才有这一说,给人以感觉一个线程active 时阻塞另一线程,那我在线程中的临界处理不是多余?

解决方案 »

  1.   

    阻塞型就是在一个SOCKET操作完成之后才能进行下一步操作,比如CONNECT完成之后才能进行其它如SEND/RECV之类,典型的如DELPHI的CLIENTSOCKET控件设为阻塞方式时,OPEN的执行时间会比较长,执行后才能干其它事。而非阻塞则只要开始操作即可继续,如CLIENTSOCKET设为非阻塞时,OPEN立刻执行完,但如果这时进行SEND之类的操作就会出错,因为这时不一定连上,一般非阻塞式用于与WINDOWS的消息机制结合,阻塞式用于与线程技术结合。这个当说是不够的,要亲自试试才能体会到。
      

  2.   

    去看Stevens的Unix网络编程第一卷第338页。
      

  3.   

    用通俗的话讲:
    阻塞就是系统这时只能进行通信工作,其他的事等完成了通信后再干,
    非阻塞就是系统一边进行通信工作(或系统不忙时进行通信工作),一边干其他的事。
    专业的话Raptor已经讲了。
      

  4.   

    其实
    阻塞就好象是showModal
    非阻塞就好象是show