我有2个方法 代码相同

都是执行上传文件io操作 一个同步 一个异步

 

 

接着我用postman 分别用200个线程 去同时测试2个接口

 

 

结果很意外 2个接口 同时执行完成的速度 异步更慢

之前经常看别人博主说 尽量用异步来优化自己的代码

但是经过自己测试后 发现使用异步的效率结果更差,后面仔细想了下 好像确实是这么回事

所谓的异步操作就是一个a线程在执行任务的时候,执行到一半 再把任务交给b另一个线程,

然后a线程就开始等待b的执行完成了,那这不还是同步的吗? 还是我理解的有问题呢?

比如我请求50次

同步请求只需要50个线程完成任务

异步请求则需要100个线程  50个线程等待  50个执行上传任务

这不更增加线程的开销吗? 小弟实在没搞懂