人的一生犹如负重致远,不可急躁。 以不自由为常事,则不觉不足。 心生欲望时,应回顾贫困之日。 心怀宽恕,视怒如敌,则能无视长久。 只知胜而不知敗,必害其身。 责人不如责己,不及胜于过之。
分类: IT职场
2017-03-02 21:40:56
线程同步与阻塞
1 线程同步
两个(或多个)线程之间执行有指定顺序,一个做了什么之后,另一个才能做,一前一后,而不能随机。
2 线程互斥
当有一个线程在使用临界资源时,其他线程都不可以对这个内存地址进行操作,直到该线程完成操作,其他线程才能对该内存地址进行操作。
3 阻塞
阻塞一般指方法,说一个方法阻塞,本质上指该方法不能马上返回,当前线程不能继续执行。
4 非阻塞
非阻塞一般指方法,说一个方法非阻塞,本质上指该方法不等结果执行马上返回,当前线程可以继续执行。
阻塞和非阻塞关注的是程序在等待调用结果时的状态。阻塞调用是指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才会返回。非阻塞调用指在不能立刻得到结果之前,该调用不会阻塞当前线程。
严格来说,阻塞和非阻塞是强调方法的代码块,跟线程同步与否没有关系,只不过线程同步一般要用到阻塞这种方式去实现。