一、阻塞非阻塞与同步异步

来源:互联网 发布:网络医托 编辑:程序博客网 时间:2024/04/30 14:59
一、阻塞非阻塞与同步异步
                基本概念:
                ①同步:发出一个调用,没有结果返回则等待(等待包括阻塞、逻辑代码没执行完两种),不会往下继续执行别的操作。
                ②异步:发出一个调用,可以继续执行别的操作。当调用回调结果时,通过回调通知通知调用者。
                ③阻塞:发出一个调用,在调用结果回调之前,当前线程会被挂起,直到回调结果返回才激活线程往下执行。
                ④非阻塞:发出一个调用,系统会马上回调状态码,让程序通过判断状态码进行相应操作,不会阻塞线程。
                问题一:阻塞和非阻塞的区别?
                原理:应用程序的调用是否立刻返回。服务器端而言,通过轮询的方式,能够有效的处理多个用户,而阻塞则只能对一个用户进行
                           处理。

                问题二:同步与异步的区别?
                原理:数据拷贝的时候进程是否进入阻塞。客户端而言,用户进行了一个操作而此操作处于等待状态时,用户不能进行其他任何的
                           操作。

                问题三:同步与阻塞的区别?
                原理:阻塞是让当前线程挂起,而同步则是指代码执行顺序,但同步造成的等待包括两种,包括阻塞,逻辑 代码没执行完。当逻辑
                          代码没有执行完之际,其实系统还是在执行各种操作的,线程并没有挂起。
0 0