☰
遇到过的八股
2026/9/27 3:00:20 网站建设 项目流程

遇到过的高频八股

1.介绍一下智能指针(CPP)

智能指针是c++基于RAII资源管理方式,管理动态生命周期对象的设计,包括unique_ptr,它独享所有权,只允许被移动不允许被拷贝。

sharedptr包括强引用计数,它共享所有权,当引用计数为0时自动调用delete释放空间。

weakptr和sharedptr结合起来使用,它不增加引用计数的数量,在使用之前需要通过lock获得sharedptr确定对象存在去使用。

2.select、poll和epoll的区别(CPP网络编程)

select、poll和epoll都是适用于io多路复用的,select能监听的fd受fdsize的限制,poll没有这个固定限制,他们都需要每次把监听的集合传递给内核,epoll不需要这么做,epoll在内核中维护要监听的文件描述符集合,epollwait只返回那些发生事件的文件描述符,更适合大量连接且少量活跃的场景。

3.介绍一下mysql的事务隔离级别(mysql)

mysql的事务隔离级别包括读未提交、读提交、可重复度、串行化,它们针对的是脏读、幻读不可重复读去解决问题,读提交通过多版本并发控制解决脏读的问题,可重复读在这个基础上增加了临键锁基本解决了幻读和不可重复读的问题,但是对于快照读和当前读的混合读没有完全解决,串行化就好像是串行读的结果。

4.什么是布隆过滤器(Redis相关,可以解决缓存穿透)

布隆过滤器是一种效率很高的概率型数据结构,它包括一个位数组和多个哈希函数,通过哈希计算对多个位置置1,对于指定的数据,通过布隆计算得到的位置为0就一定不存在这个数据,如果都为1可能存在。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询