linq读书笔记2-查询内存中的对象】的更多相关文章

上次我们说到了linq对数组内容的检索,自.net2.0以后,泛型成了很常见的一种应用技术,linq对泛型的检索也提供了完善的支持 如对list类型的支持,范例如下: class Program    {        static void Main(string[] args)        {            List<Books> samplebooks = new List<Books>() {                                    …
前言 该读书笔记用于记录在学习<深入理解Java虚拟机--JVM高级特性与最佳实践>一书中的一些重要知识点,对其中的部分内容进行归纳,主要是方便之后进行复习. 运行时数据区域 Java虚拟机在执行过程中会将其管理的内存划分为多个不同的数据区域.其中一些区域随着虚拟机启动而创建,一些区域生命周期则依赖用户线程的启动和结束. 下面是JDK1.7 程序计数器 是一块较小的内存空间,用于记录当前线程所执行的字节码的行号,在执行过程中通过改变计数器的值来选择下一条被执行的指令.分支.循环.异常处理等都通…
今天看JVM的过程中收获颇丰,但一想到这些学习心得将来可能被遗忘,便一阵恐慌,自觉得以后要开始坚持做读书笔记了. 操作系统层面的内存管理 物理内存是一切内存管理的基础,Java中使用的内存和应用程序的内存一样是从物理内存申请下来的内存.物理内存也就是寄存器,通过地址总线与CPU相连,通常情况下地址总线与寄存器有着相同的位数,同时也决定了处理器最大可寻址的地址空间. 为了提高物理内存的利用率而产生了虚拟内存,也就是逻辑上的内存.为了保证操作系统和应用程序的稳定性,运行在操作系统中的用户程序不能访问…
linq对数据的查询方式的表达形式主要有两种: var demo =from p in pList where p.id=*** select p; var demo =pList.where(p=>p.id=***) select p; 以上是linq最近常见的两种表达形式.linq支持多种操作符的操作,下面对主要的常操作符进行说明: select 与selectmany select操作符声明: public static IEnumerable<s> select<T,S&g…
SGA 1. 什么是LRULRU表示Least Recently Used,也就是指最近最少使用的buffer header链表LRU链表串联起来的buffer header都指向可用数据块 2. 什么是检查点队列就是将脏块按照修改的时间顺序排列 3. 什么是mmanMemory Manager (MMAN)内存管理进程 一:buffer cache: 1.作用:缓存最近使用过的数据块 2.管理方式:LRU和检查点队列 3.buffer的状态: 已连接:当前正将该块读入高速缓存或正在写入该块,其…
本文首发自公众号:RAIS,期待你的关注. 前言 本系列文章为 <Deep Learning> 读书笔记,可以参看原书一起阅读,效果更佳. 概率论 机器学习中,往往需要大量处理不确定量,或者是随机量,这与我们传统所需要解决掉问题是大不一样的,因此我们在机器学习中往往很难给出一个百分百的预测或者判断,基于此种原因,较大的可能性往往就是所要达到的目标,概率论有用武之地了. 概念 离散型 概率质量函数:是一个数值,概率,\(0\leq P(x)\leq 1\): 边缘概率分布:\(P(X=x)=\s…
可回收判定两种算法 引用计数法(Reference Counting):引用为0时可回收. 可达性分析法(Reachability Analysis): 从GCRoots对象到这个对象不可达. GCRoots: 本地变量表引用的对象: 方法区中静态属性引用的对象 方法区中常量引用的对象 Native方法栈引用的对象. 个人理解,即在生命周期内不会变得不可达的对象.   垃圾收集算法 复制算法,一般用于新生代的minor gc,效率较高: 标记-整理算法,用于老年代的full gc,效率较低.  …
(1)定义一个空的类型,里面没有不论什么成员变量和成员函数,对该类型求sizeof,得到的结果是多少? 答案是1.空类型的实例中不包括不论什么信息,本来求sizeof应该是0,可是当我们声明该类型实例的时候,它必须在内存中占有一定的空间,否则无法使用这些实例. 至于占用多少内存.由编译器决定. Visual Studio中每一个空类型的实例占用1字节的空间. 假设在该类型中加入一个构造函数和析构函数,再对该类型求sizeof,得到的结果又是多少? 答案还是1.调用构造函数和析构函数仅仅须要知道函…
前言 最近开始看这本书,记得前段时间拿起这本书的时候,心情是相当沉重的!当时的剧本是这样的-- 内景.家里 - 下午 我(画外):唉,有点无聊啊!(偶然撇过书架)这么多书得看到什么时候啊,要不要拿一本翻翻呢?但是在家里好像有点看不下去啊,是太安逸了吗?最近那本<图解 HTTP>也还没看完,感觉暂时有点不想看了.(走到书架前)还是挑几本优先级比较高的带到███下班的时候看吧.(沉思)嗯,这本带过去~ 当我拿起<深入理解 Java 虚拟机>这本书的那一刻,心里咯噔一下--唉,PM10…
正文 由于计算机的处理器运算速度与它的存储和通信子系统速度的差距太大了,大量的时间都花费在磁盘 I/O.网络通信或者数据库访问上,导致处理器在大部分时间里都处于等待其他资源的状态.因此,为了充分利用计算机的处理器运算能力,现代计算机操作系统采用了多任务处理的方式,即让计算机并发处理多个任务. 对于计算量相同的任务,程序线程并发协调得越有条不紊,效率自然就会越高:反之,线程之间频繁阻塞甚至死锁,将会大大降低程序的并发能力. 一.硬件的效率与一致性 1.高速缓存 由于计算机的存储设备与处理器的运算速…