随机记录
文章平均质量分 76
qq_41718092
这个作者很懒,什么都没留下…
展开
-
设计模式整理-仅供自己查阅
模策则迭名装备中介装房-行为模式 模板模式:定义一个算法结构,而将一些步骤延迟到子类实现。 例子:留学生 每个国家的留学生制度不一样,但是还是会有一些是一样的,将一样的抽象出来然后将不一样的进行抽象,最后进行抽象实现; 策略模式:定义一系列算法,把他们封装起来,并且使它们可以相互替换。 组成抽象策略类,具体策略类,环境(持有策略类的引用提供给客户端调用); 例子:清蒸大闸蟹和红烧大闸蟹;先定义大闸蟹的接口然后定实现接口的多个方法 最后第一个调用者context,最后定义客户端有客户端进行调用;原创 2022-04-27 07:32:22 · 157 阅读 · 0 评论 -
指令重排问题
1编译器重排序 2指令 就有点类似于t1线程中a=1的修改结果对t2线程不可见; 问题: 1重排序会带来可见性问题,所以在多线程开发中必须要关注并规避重排序。 2编译器对上下文分析然后进行优化减少对内存的交互,第一阶段,编译器重排序,就是在编译过程中,编译器根据上下文分析对指令进行重排序, 目的是减少CPU和内存的交互,重排序之后尽可能保证CPU从寄存器或缓存行中读取数据。 什么是寄存器:它们可用来暂存指令、数据和位址; 寄存器拥有非常高的读写速度,所以在寄存器之间的数据传送非常快。任意寄存器可以作为数据原创 2022-03-03 21:46:39 · 578 阅读 · 0 评论