【问题描述】
调用Task函数,向queue中添加task,但是使用yield无法释放CPU,后插入queue中的函数始终无法执行。
示例代码如下:
【解决方案】
串行队列是按顺序执行,提交至该队列的任务将按照顺序执行;如果某个提交的任务中发生阻塞,则无法保证该任务的执行顺序。
也就是说,串行队列需要等前一个任务完成后才能执行下一个任务,不能强行抢占。
具体请参考如下文档说明:https://gitee.com/openharmony/resourceschedule_ffrt/blob/master/docs/user_guide.md#%E6%8F%8F%E8%BF%B0-28