摘自:
比如我在线程A中调用了fun()函数。同步/异步:针对的被调用者的状态。也就是fun函数。(也就是上面的烧水壶)同步是指fun如果没有结果就不会返回,除非有结果了。异步是指fun在被调用之后就立即返回了。返回结果之后再通知调用者(可以用信号、回调之类的实现)。阻塞/非阻塞:主要是针对调用者的,是指程序在等待结果时的状态。(也就是上面的老张在等水开时的状态)阻塞是指调用线程会被挂起,不做什么别的事情。在得到结果之后才会返回。非阻塞是指不能立即得到结果,当前线程不会被挂起,还可以做别的事情。