可重入函数
什么是可重入函数?C语言如何写可重入函数?
可重入函数是指能够被多个线程“同时”调用的函数,并且能保证函数结果正确的函数。
在C语言中编写可重入函数时,尽量不要使用全局变量或静态变量,如果使用了全局变量或静态变量,就需要特别注意对这类变量的访问的互斥。一般采用以下几种措施来保证函数的可重入性:信号量机制,关调度机制,关中断机制。
需要注意的是,不要调用不可重入函数,当调用了不可重入函数时,会使该函数也变为不可重入函数。一般驱动程序都是不可重入函数,因此在编写驱动程序时一定要注意重入问题。