3.26虎牙直播二面

问的非常仔细,讲不清楚是不会给过的

  • 1.STL用过吗,说下用过STL的哪些组件

  • 2.map和unordered_map的区别
    一面也问了,当时答不好,现在又没答好,而且问的更深。。
    map底层是红黑树,unordered_map是哈希表
    红黑树的增删查复杂度都是O(lgn),unordered_map是O(1)
    STL里,unordered_map采用哈希表实现,用存放hash冲突的值,hashmap会在插入元素时自动增加桶的数量

  • 3.什么时候用map/unordered_map
    需要有序输出的时候用map

  • 4.hash表的查询复杂度?增删呢?
    O(1)

  • 5.线程和进程的区别

  • 5.1.线程中的共享内存和进程之间的共享内存的区别

  • 6.TCP和UDP的区别

  • 7.什么时候用TCP,什么时候用UDP
    UDP实际用处并不大,只在局域网/NAT穿透才需要UDP,非常局限
    视频传输实际上也是基于HTTP的,而不是UDP
    非要让UDP可靠,还不如用TCP
    也可以选择QUIC协议,可靠的UDP协议
    1)建立连接延迟小,只需1.5RTT,加上加密控制
    2)连接迁移,TCP采用源目的的IP/PORT,切换网络时要重连,QUIC采用ID标识连接,切换网络无需重连
    3)前向纠错
    4)改进的拥塞控制

  • 8.那视频直播用的是什么协议
    RTMPS,基于TCP+HTTPS

  • 9.为什么用UDP,TCP不是也挺方便的吗
    没错,TCP就是更方便

  • 10.那DNS用的是什么协议
    DNS是TCP+UDP
    访问局域网里的DNS服务器的时候,用UDP;到根服务器里查询ip的时候,用TCP

  • 11.那迅雷的p2p下载用的是什么协议

  • 12.问个问题,弹幕长1-30个字,敏感词库100w单词,怎么剔除敏感词
    map/trie

  • 13.有的敏感词有拼音代替,怎么匹配到
    说了很久,没给出他满意的方案,最主要的原因是拼音可能匹配到多个词语,所以比较复杂

  • 14.C++11之后的新特性?
    答了coroutine,然后被疯狂问

  • 15.为什么要coroutine?直接在线程上优化不好吗
    1)协程在用户态上实现,有自己的状态寄存器和栈,切换开销比线程小
    2)一个CPU可以开上万个协程,高并发
    3)无需原子操作加锁同步,降低开销

  • 16.什么时候用协程,什么时候用线程?
    协程适用于IO密集型任务
    进程适合CPU密集型

  • 17.屏障在多线程中的作用,屏障是只和编译器优化相关的吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值