当前位置: 首页 > news >正文

有一个域名做网站优化seo网站

有一个域名做网站,优化seo网站,如何看出网站用dede做的,h5网站页面设计文章目录 iOS - Runtime - Class-方法缓存(cache_t)1. 散列表的存取值 iOS - Runtime - Class-方法缓存(cache_t) Class内部结构中有个方法缓存(cache_t),用散列表(哈希表)来缓存曾经调用过的方法,可以提高…

文章目录

  • iOS - Runtime - Class-方法缓存(cache_t)
      • 1. 散列表的存取值

iOS - Runtime - Class-方法缓存(cache_t)

Class内部结构中有个方法缓存(cache_t),用散列表(哈希表)来缓存曾经调用过的方法,可以提高方法的查找速度。(使用空间换时间的方式来提升速度)

其中,_buckets就是散列表_mask表示散列表的长度-1

哪一个类对象调用的方法,会把该方法缓存到这个类对象。也就是说,如果class1调用的方法,最终是在他的父类或者根类才找到方法实现,也会把方法混存到class1,下次class1再调用此方法,直接在自己的方法缓存里面就能找到方法

当前类查找,或者当前类没找到继续到父类或者跟根类,查找,都是优先缓存里面查找,缓存没找到再到方法列表里面去查找

1. 散列表的存取值

0NULL
1NULL
2bucket_t(_key = @selector(personTest), _imp)
3NULL
4NULL
5NULL
  • _buckets就是散列表,相当于一个数组,有个初始容量
  • 存取数据时,假设传入的是@selector(studentTest),使用@selector(studentTest)这个key& _mask,得出来的值作为数组的索引值,使用该索引值存取数据
  • @selector(studentTest) & _mask <= _mask,目的是控制得出来的索引值在数组最大容量范围之内
想象一下`&`运算后的值,一定是<= _mask
/**
0b00010101  
0b00000001     <- _mask
----------------- & 运算
0b00000001
*/
  • &_mask生成的索引值可能一样的,怎么解决,使用索引值先取一下,判断里面的key和我们要的key是否一样,不一样(或者已存在–存值时)直接将索引值-1,还一样就继续-1,减到索引值为0时,把索引值设置为_mask,继续找,然后再-1继续找,直到找到想要的key(或者空位–存值时)
  • 扩容,按原来空间2倍扩容。扩容的时候,会将缓存清掉,因为_mask的值已经变了

@oubijiexi

http://www.tj-hxxt.cn/news/92555.html

相关文章:

  • 做房源网站十大免费网站推广
  • 宝塔面板做网站合肥百度推广公司哪家好
  • 内蒙古做网站上海谷歌推广
  • 加强理想信念教育主题网站建设网络宣传方案
  • 做网站怎么回本百度竞价排名榜
  • 深圳出台多个利好政策seo推广营销公司
  • 检测软件定制seo基础知识
  • 京东网站建设2022年最新最有效的营销模式
  • 济南比较大的网站制作公司泰安网络推广培训
  • 腾讯企业邮箱注册申请官网东莞seo优化公司
  • 做废钢那个网站好东莞seo网站管理
  • 做时时彩网站数据分析师
  • 网站怎么做404 301今日小说搜索百度风云榜
  • 培训机构前端班课哈尔滨seo推广
  • 做网站一天忙吗关键词优化
  • 网站开发时seo专员工资待遇
  • html5 网站建设三只松鼠网络营销案例分析
  • 婺源网站建制作优化 保证排名
  • avada主题做网站seo关键词怎么选择
  • 做pc端网站效果兰州网络推广与营销
  • 业务宣传网站建设seo推广软件
  • 哈尔滨网站制作费用网上营销
  • 做网站插背景图片如何变大关键词seo排名优化如何
  • wordpress多站点不同主题网络营销策划创意案例点评
  • 怎么做好邯郸网站建设广州seo网站公司
  • 网站制作加教程视频成都百度搜索排名优化
  • 那个b2b网站可以做外贸seo网站管理招聘
  • 导购网站怎么推广在线资源搜索引擎
  • 做t恤网站 一件也可以做企业员工培训内容及计划
  • 想换掉做网站的公司天津百度推广公司电话