代码的临界区的示例是访问多个变量,这些变量受ISR影响。若中断在对单个变量的访问间发生,则其值将会不一致。这是一种叫作”竞态条件”的问题的实例:ISR和主程序循环争相修改变量。如上所述,若在主代码中修改了
Python内置类型的实例或在ISR中访问实例,则应多加注意。执行更改的代码应被视为临界区,以确保ISR运行时实例处于有效状态毕向东java基础35天目录。这样的IRQ对IRQ(例如,堆可能被锁定)中运行的代码进行了限制,并预定一个稍后会回调的函数能够接触这些限制。在实时系统中,这可能会导致极少的、难以预测的故障。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/25731.html