
0 点赞 评论 收藏
分享
7粒:正常没这么久?我昨天电话面了整整一个小时 本来还要电脑编程 但是我在实习不方便边用电脑边电话才没再编程😳不然我感觉得一个半小时吧😳

0 点赞 评论 收藏
分享
江沢直树:这个要从运行库的角度来说。微软和Linux平台的C运行库在早期均提供线程安全和线程不安全版本,区别就是效率上的一些差距。现在来说基本都是线程安全的运行库了,那么new在不重载空间分配器的前提下,它和malloc都是线程安全的,也就是说函数内部会对一些数据结构上锁。但它们是不可重入函数,非异步信号安全,即进程执行流正在malloc中,这时需要相应信号,在信号处理函数中再调用malloc,所以这个锁应该是递归锁。在malloc中改变了内存管理的数据,那么信号处理函数结束后,原来的malloc看到被改变的内存管理数据结构后会一脸懵逼,怎么一眼没找看到就变了,从而产生错误的结果
0 点赞 评论 收藏
分享
创作者周榜
更多
关注他的用户也关注了: