美文网首页
准备工作

准备工作

作者: Love_Miss_11 | 来源:发表于2019-07-26 16:48 被阅读0次

    YangMap中比较重要的一点,就是摈弃掉HashMap的数组结构,因为HashMap的最大缺点就是大对象,而大对象产生的原因就是有一个特别巨大的数组table,这个数组直接导致了大对象的产生,从而导致OutOfMemoryException.

    YangMap需要解决的第一个问题,就是大对象的问题。

    首先先写一些粗略的东西吧:

    第一个肯定需要摒弃掉 数组,因为大数组对于JVM来说就是一场灾难。

    那么,如果有多个不同的对象,存放在YangMap当中,又要达到HashMap的同样的效果,首先第一点,就是要找到对象和对象之间的关联。

    这里先创造几个概念:

    1.对象和对象之间没有直接联系,对象和对象之间通过拐点进行通信。

    1.1 A->B的拐点是不可逆的,也就是说B->A是一个新的拐点。

    2.拐点有几种不同的类型,目前我想到的就是cornerNode和circleNode.

    3.拐点有一个基本特性,可以把这个称为Direction(方向),这里可以检点理解为Vector(向量机)。

    4.Pipeline(管道),因为进行转向需要时间,说简单点就是需要次数,pipeLine是一个容器,它就像一条复杂的N字路口,

    简单点来说就是在路口你可以有N种不同的选择,当你开车的时候,你可以往任何一个你想去的路口的下一个入口前进,当你进入某一个路口之后,走了一段之后你会进入下一个路口,你也发现或多或少的路口,每一次想到达一个确定的终点可以走很多不同的路,这些路的组合,

你可以通过控制步骤,在不同的时间点到达不同的路口,这个有些复杂,后面再说。

    5.Distance(距离),进入一个路口后,进入下一个路口的中间时间差。

    6.(Judgement)决定,进入某一个路口,决定进入哪一个路口的方法,下一个路口的决定怎么影响后续路口的决定。

    7.extension hole(扩展点’),可以想象成打洞,某一个对象上加入属性,这些属性可以为后续“拐点”或者pipeline交汇处进行合理设计提供依据。

相关文章

  • 和对象出去吃饭,应该提前做好哪些准备?

    在日常生活中,和对象一起出去吃饭,是需要做一些准备工作的。那么这些准备工作该怎么做?做哪些准备工作?一、准备工作怎...

  • 准备工作

    2018年6月17日 星期日 晴 明天就是端午节了,明天上午班里计划组织包粽子活动,让孩子们进...

  • 准备工作

    每逢家里聚餐我都能轻松拿出十几个拿手菜。 看着家人们谈笑风生围着餐桌品味佳肴的情景生活再苦再累都值得。 看着十几个...

  • 准备工作

    1.打开车门,坐座位,交身份证,听语音:考试开始x2 2.绕车一周,❗️听到❗️右后方有学员通过,左前方有学员通过...

  • 准备工作

    收拾行李真的好累,中途直接睡着了,醒来接着收拾,现在才敷个面膜休息,明天还有一个好长的todolist... 希望...

  • 准备工作

    今天是新作的第一天(笑笑) 今天先整理一下新作的总体思路吧! 我大体上要写的是一个现实的,像那些以扮猪吃老虎为主要...

  • 准备工作

    开发工具 1.Java开发工具 IntelliJIDEA 地址: https://www.jetbrains....

  • 准备工作

    XenServer部署系列之01准备工作 一、关于XenServer 关于XenServer,百度上如此描述: C...

  • 准备工作

    这张图是在网上找的,我把这张图打印出来,对照着复习,每天过一遍。

  • 准备工作

    Java语言特点 简单性 解释性 面向对象 高性能 分布式管理 多线程 健壮性 动态 结构中立 安全性 开源 跨平...

网友评论

      本文标题:准备工作

      本文链接:https://www.haomeiwen.com/subject/yosdrctx.html