关于并发的一些知识点?

*重排序指的是编译器和处理器为了优化程序性能而对指令序列进行重新排序的手段。根据上面的表格,得到了处理器不会对存在数据依赖的操作进行重排序。这里数据依赖的准确定义是:如果两个操作同时访问一个变量,其中一个操作是写操作,此时这两个操作就构成了数据依赖。常见的具有这个特性的如i++、i–。如果改变了具有数据依赖的两个操作的执行顺序,那么最后的执行结果就会被改变。这也是不能进行重排序的原因

*线程间协作通信:共享数据操作和线程间通信机制

*通信是指线程之间以何种机制来交换信息,主要有两种:共享内存和消息传递

*java内存模型是共享内存的并发模型,线程之间主要通过读-写共享变量来完成隐式通信

猜你喜欢

转载自blog.csdn.net/weixin_36708538/article/details/80640708
今日推荐