阿里内推2016面试(终总结)详解.doc

孙彦晨 阿里一面 项目,问了一个项目,是学术项目 1.多态 2.虚指针 3.知道STL吗 list用过吗 它是怎么实现的 list是C++标准模版库(STL,Standard Template Library)中的部分内容。实际上,list容器就是一个双向链表,可以高效地进行插入删除元素。使用list容器之前必须加上vector头文件:#includelist; hash_map用过吗 它是怎么实现的 容器都有哪些 数组与链表的区别? 3.知道设计模式吗?用过单例模式吗? 叙述一下单例模式的过程 在单例模式下,用多线程会出现问题吗? 4.Java中没有delete,C++中最讨厌delete,怎么解决? 引出智能指针 加锁 5.数据库 多线程访问数据库 读到脏的数据 怎么办 用到乐观锁与悲观锁的知识点 悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版

文档评论(0)

1亿VIP精品文档

相关文档