mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-02-05 19:39:42 +08:00
@@ -614,16 +614,5 @@ CosyOS启用“每调度监控”的充分必要条件是启用任务管理器
|
||||
9、接收消息:uRecvMsg(que, tc)。<br>
|
||||
A、等待标志组:uWaitFlagGroup(group, tc)。<br>
|
||||
* 其它会导致任务调度/切换的服务,虽支持在临界区中或关闭总中断时调用,但也必须等到最终退出临界区或开启总中断后才能切换任务。<br>
|
||||
|
||||
### CosyOS-II 在中断中调用服务注意事项
|
||||
* **中断中写全局变量** <br>
|
||||
一、当用户在中断中调用iWriteGVar(gv, lv)、iWriteGAry(gp, lp, size)、iWriteGStr(gs, ls)写全局变量时,局部变量要做为专用:<br>
|
||||
1、如果局部变量被更新,之后就必须调用服务写同一个全局变量。<br>
|
||||
2、调用服务以后,该局部变量在本次中断中不可被改变,因为写全局变量为挂起服务。<br>
|
||||
* **中断中发送邮件** <br>
|
||||
一、当用户在中断中调用iSendMail(mbox, mail)发送邮件时,mail所指向的局部邮箱要做为专用:<br>
|
||||
1、如果局部邮箱被更新,之后就必须调用服务发送邮件至同一个邮箱。<br>
|
||||
2、服务调用以后,该局部邮箱在本次中断中不可被改变,因为发送邮件为挂起服务。<br>
|
||||
二、当邮箱的数据类型为非原子访问类型时,中断最好不要发送邮件给中断,除非这个中断的发生频率足够低,可确保在PendSV中最终完成发送以后,这个中断才会再次发生,否则会有出错的风险。<br>
|
||||
<br>
|
||||
<br>
|
||||
Reference in New Issue
Block a user