1、从列表和字典危机入手,深入了解列表、字典、字符串的底层实现。 2、掌握解析语法和条件表达式。 3、了解生成器、迭代器和装饰器的实现。 一、数据类型的底层实现 1.1 列表 1.1.1、错综复杂的复制 浅拷贝 列表的底层实现 引用数组的概念:列表内的元素可以分散的存储在内存中,列表存储的是这些元素 ...
分类:
编程语言 时间:
2020-02-07 00:51:10
阅读次数:
65
首先列上参考的资料来源 http://wiki.nesdev.com/w/index.php/NES_reference_guide 算是最全的FC相关资料的网站,能在这里找到所有的FC硬件信息以及逻辑(个人认为查找信息可以,但是不适合用来上手,信息过于详细) https://github.com/ ...
分类:
其他好文 时间:
2020-02-05 13:46:31
阅读次数:
158
spring bean 的作用域 1.singleton:唯一bean实例,Spring中的bean默认都是单例的。 2.prototype:每次请求都会创建一个新的bean实例。 3.request:每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTP request内有效。 4 ...
分类:
编程语言 时间:
2020-02-04 17:15:56
阅读次数:
87
spring怎么解决循环依赖?首先会根据 beanName 从单例 bean 缓存中获取,如果不为空则直接返回 主要是从三个缓存中获取 (称他们为3级缓存),分别是: singletonObjects (1 单例对象的cache) earlySingletonObjects(2 提前暴光的单例对象的 ...
分类:
编程语言 时间:
2020-01-31 19:12:51
阅读次数:
109
前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用到了,你再去看理论性的文章时才会豁然开朗,这是我一直以来学习技术的方法。本文我们来讲解.NET Co ...
1、锁升级的过程 当多个线程同时竞争一个对象监视器时:当前对象结构中的mark word中是否是当前线程id,如果是则当前线程获得偏向锁。 如果不是,则通过CAS将当前线程id置换到mark word中,如果成功则获得偏向锁,如果不成功则说明有竞争,升级为轻量级锁。 后续再通过CAS将线程的指针放到 ...
分类:
其他好文 时间:
2020-01-26 19:29:34
阅读次数:
84
Java并发关键字Volatile 详解 问题引出: 1.Volatile是什么? 2.Volatile有哪些特性? 3.Volatile每个特性的底层实现原理是什么? 相关内容补充: 1. 缓存一致性协议:MESI ? 由于计算机储存设备(硬盘等)的读写速度和CPU的计算速度有着几个数量级别的差距 ...
分类:
编程语言 时间:
2020-01-25 18:07:50
阅读次数:
81
前言: 在使用各种的orm框架的过程中,菜鸟的我始终没有搞懂底层实现技术,最近刚好没事找了些视频和资料了解一点皮毛,想记录下,大家勿喷。 所谓的ORM(Object Relational Mapping) 对象关系映射 官方解释是通过使用描述对象和数据库之间映射的元数据,将面向对象程序的对象自动持久 ...
分类:
其他好文 时间:
2020-01-24 12:06:55
阅读次数:
132
About nickname:xjliang slogan:立德立言、无闻西东 tag:技术爱好者,喜欢了解底层实现、开源坚定支持者(然而 Github 上没有一点绿 _<|||)、linuxer,正在使用 wsl 进行日常开发 Contact Email:gnulxj@gmail.com GitH ...
分类:
其他好文 时间:
2020-01-23 22:57:42
阅读次数:
136
事实上,python封装特性的实现纯属“投机取巧”,之所以类对象无法直接调用私有方法和属性,是因为底层实现时,python偷偷改变了它们的名称。 python在底层实现时,将它们的名称都偷偷改成了"_类名__属性(方法)名"的格式 总结: python类中所有的属性和方法,都是公有的,如果希望pyt ...
分类:
编程语言 时间:
2020-01-22 01:13:20
阅读次数:
183