同步就是多个线程同时访问一块资源,而且这种访问是有序的,必须等待上一个线程请求完成,并接收到返回信息后,才可以发送请求,线程间是等待和协调的运行。
异步就是线程间彼此独立,与同步的区别就是不用等待请求返回信息,就可以发送其它请求,做其它事情,因此它的效率也要高于同步。
形象来说同步就好像打电话,发起者需要等待接受者返回信息后,通信才建立连接。而异步就好像发广播,不管你收到收不到,信息该放还要放。
互斥是两个线程不能同时访问同一块资源,但是互斥无法限制访问顺序,A访问完了,下一次可能是B,也可能是C,只要不是同时访问某一块资源,这个过程就是互斥。同步是有顺序的,可以理解为有顺序的互斥。