社区
Linux/Unix社区
帖子详情
什么是可重入函数?
songziwuwei
2004-05-04 04:08:13
什么是可重入函数?它的特点是什么?编写有什么要求?
可重入函数和不可重入函数的区别是什么?
请大虾告知,谢谢!
...全文
174
4
打赏
收藏
什么是可重入函数?
什么是可重入函数?它的特点是什么?编写有什么要求? 可重入函数和不可重入函数的区别是什么? 请大虾告知,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ly60269
2004-05-05
打赏
举报
回复
关键是作好资源互斥工作,是否访问公共变量不是决定性的。
nsly
2004-05-04
打赏
举报
回复
英文名是什么?
wxywh
2004-05-04
打赏
举报
回复
1、可重入函数是指一个可以被多个任务调用的过程,任务在调用时不必担心数据是否会出错。如信号处理程序中应当使用可重入函数。
2、满足下列条件的函数多数是不可再入的:(1)使用静态的数据结构,如getlogin(),gmtime(),getgrgid(),getgrnam(),getpwuid()以及getpwnam()等等;(2)函数实现时,调用了malloc()或者free()函数;(3)实现时使用了标准I/O函数的。
gaoxianfeng
2004-05-04
打赏
举报
回复
函数体内没有对公共变量进行操作
可
重入
函数
和非可
重入
函数
在上面的代码中,increment_counter()
函数
是一个非可
重入
函数
,因为它使用了全局变量 counter,并且每次调用都会修改它的值。在上面的代码中,increment()
函数
是一个非可
重入
函数
,因为它使用了静态变量 count,并且每次调用都会修改它的值。在上面的代码中,add_numbers()
函数
是一个可
重入
函数
,因为它不依赖全局状态或数据,并且不会修改任何共享资源。在上面的代码中,add()
函数
是一个可
重入
函数
,因为它不依赖全局状态或数据,并且不会修改任何共享资源。
可
重入
函数
什么是可
重入
函数
可
重入
函数
主要用于多任务环境中,一个可
重入
的
函数
简单来说就是可以被中断的
函数
。如果一个
函数
执行过程中,被中断服务程序打断,去执行另外一段代码,然后恢复先前的功能,而不妨碍其早期的操作,则称该
函数
能是可
重入
的。可
重入
函数
用于硬件中断处理,递归等应用程序。 可
重入
函数
必须满足如下条件: 不使用全局和静态数据。虽然没有限制,但一般不建议。因为中断可能会改变某些全局值,之后使用新数据恢...
可
重入
内核 & 可
重入
函数
可
重入
内核在ULK(深入理解linux内核)中的定义是指若干个进程可以同时在内核态下执行,也就是说多个进程可以在内核态下并发执行内核代码。在单处理器上,只能实现 微观上的串行,宏观上的并行,即任意时刻,只有一个进程真正执行,其他进程处于阻塞或者等待状态。这里的可
重入
,是指可以多个进程进入内核,并不是重复/重新进入内核 对于linux来说,可
重入
内核代码包含可
重入
函数
和非可
重入
函数
。 可
重入
函
什么是可
重入
函数
?
如果你要查阅一个俗气的东西,你就上百度,如果要查稍微高级一点的东西,请上谷歌,当然英文的维基百科也不错。真的,我没有装逼。 什么是可
重入
函数
呢?先来看看维基百科的说明吧: Incomputing, acomputer programorsubroutineis calledreentrantif it can be interrup
浅谈可
重入
函数
与不可
重入
函数
在实时系统的设计中,经常会出现多个任务调用同一个
函数
的情况。如果有一个
函数
不幸被设计成为这样:那么不同任务调用这个
函数
时可能修改其他任务调用这个
函数
的数据,从而导致不可预料的后果。这样的
函数
是不安全的
函数
,也叫不可
重入
函数
。 相反,肯定有一个安全的
函数
,这个安全的
函数
又叫可
重入
函数
。那么什么是可
重入
函数
呢?所谓可
重入
是指一个可以被多个任务调用的过程,任务在调用时不必担心数据是否会出错。 一个可...
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章