线程同步与异步的区别

583 阅读1分钟
  • 同步可以看做是一个单线程操作,只要客户端请求了,在服务器没有反馈信息之前是一个线程阻塞状态(就是假死状态,不能操作其他方法)
  • 异步肯定是多线程,在客户端请求时,可以执行其他线程,并且在把这个线程存放在他的队列里边,有序的执行。(可以设置线程的数量,当超过最大时会显示等待状态)

线程同步与异步区别

线程同步是多个线程同时访问同一资源,等待资源访问结束,浪费时间,效率低。

线程异步是 方法资源时在空闲等待时可以同时访问其他资源,实现多线程机制。

      异步处理其实就是,你现在问我问题,我可以不回答你,等我有时间了再处理你这个问题。同步就相反了,同步信息被立即处理,直到信息处理完成才返回消息句柄;异步信息收到后将在后台处理一段时间,而早在信息处理结束前就返回消息句柄。

简单来说:同步必须执行结束之后才能执行其他操作,而异步可以任意操作。

区别:同步比异步实现起来简单一些,用于读取数据量较小的接口。异步可以按规定顺序去执行线程,多用于 比如一个网页信息 ,(你把他分成2个线程或者多个,先读取它的title,时间,作者等等 第二个或者其他进程用于读取数据量较大的正文内容,比如图片)。这样对于用户体验很有效果。