现在的位置: 首页 > 综合 > 正文

241 map 在什么情况下会发生死锁;stl 中的 map 是怎么实现的?

2017年11月22日 ⁄ 综合 ⁄ 共 273字 ⁄ 字号 评论关闭

41.   map 在什么情况下会发生死锁;stl 中的 map 是怎么实现的?(有要参加淘宝面试的朋友注意,淘宝喜欢问 STL 方面的问题)
      如果面试官的本意是指map调用allocator死锁,理论上是可能的,allocator会调用libc的malloc等函数,malloc是线程安全的,但不是异步信号安全的,如果当前代码malloc在执行中,需要执行信号处理函数,而信号处理函数内部再次调用malloc,此时极有可能死锁!不过这弯子让太大了,而且和map的关系比较牵强,是脑筋急转弯吧,不算技术问题。。
    红黑树实现的,红黑树是一种自平衡二叉查找树。

抱歉!评论已关闭.