可重入函数

Posted lr1402585172

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了可重入函数相关的知识,希望对你有一定的参考价值。

 

一个函数在被调用执行期间(尚未调用结束)由于某种时序又被重复调用称之为“重入”。根据函数实现的方法可分为“可重入函数”和“不可重入函数”两种。

 

注意事项

  1. 定义可重入函数函数内不能含有全局变量及static变量,不能使用malloc、free
  2. 信号捕捉函数应设计为可重入函数
  3. 信号处理程序可以调用的可重入函数可参阅man 7 signal
  4. 没有包含在上述列表中的函数大多是不可重入的其原因为

    a) 使用静态数据结构

    b) 调用了mallocfree

    c) 是标准I/O函数

 

 

以上是关于可重入函数的主要内容,如果未能解决你的问题,请参考以下文章

对线程安全, 可重入函数, 异步安全的理解

可重入函数和非可重入函数

可重入函数

函数可重入性及编写规范

可重入函数和不可重入函数

Linux系统编程可重入和不可重入函数