回调与协程

回调:

通常回调是以向一个方法传递另一个函数作为参数, 在该方法中, 于适当的时候调用传递的函数参数的形式呈现的, 回调的本质还是函数调用, 他与普通的函数调用的不同点在于, 普通的函数调用在编程时已经确定要调用哪个函数, 而回调机制是在运行时确定需要调用的函数的, 根据传递的作为参数的函数不同, 其行为也会不同

协程:

协程是指在一个函数运行到出现某种情况时暂停执行转而执行另一个函数, 这听起来似乎跟函数调用相同, 但协程并不是函数调用, 他的重点是执行过程中的暂停执行, 这与多线程执行时的线程切换相似, 但协程是单线执行的, 他没有多线程切换时的开销, 这也就使得协程在运行效率更高的同时没有了多线程中的共享资源问题, 不再需要锁来保证安全, 但是相对的协程也没有了多线程对多处理器资源的利用率优势, 不过这个缺点可以利用多进程方式来弥补

猜你喜欢

转载自www.cnblogs.com/bzaq/p/9892955.html