3-15 回调函数和任务队列的区别
回调函数
回调函数是作为参数传给另一个函数的函数,这个函数会在另一个函数执行完成后执行
任务队列
任务队列是一个事件的队列,IO设备完成一项任务后,就在队列中添加一个事件,表示相关的异步任务可以进入执行栈中了
同步任务:主线程上排队执行的任务,前一个任务执行完成后才能执行下一个任务
异步任务:不进入主线程,进入任务队列的任务。只有当主线程上的同步任务执行完成后,主线程会读取任务队列中的任务,开始异步执行
任务队列中的事件包括IO设备的事件、用户产生的事件。只要指定过回调函数,这些事件发生时就会进入任务队列,等待主线程读取
异步任务必须指定回调函数,当主线程开始执行异步任务时,就是执行对应的回调函数