读书人

【请问】glibc库中的malloc函数是可重

发布时间: 2012-02-16 21:30:36 作者: rapoo

【请教】glibc库中的malloc函数是可重入的吗?
RT,malloc函数支持多线程吗?

[解决办法]
多线程环境需要多线程版本的C链接库,Unix和Windows都是如此。

[解决办法]
可重入跟多线程不是一个概念
reentrant VS thread-safe
完全不同的东西

malloc在内部维护一个链表
此时如果捕捉到一个signal
handle中可能又要调用malloc
这个时候问题就大了


[解决办法]
malloc / free / 标准IO等都是不可重入的
[解决办法]
thread-safe, no-reentrant

读书人网 >C语言

热点推荐