文章目录
前言
项目开发过程中,有需求在31服务(Routine)收到请求时,等待应用层反馈执行完后再进行响应。所以pending一段时间,本文介绍该功能的实现。
Dcm规范
以Routine为例,其服务包含以下返回状态
0:E_OK,服务成功执行
1:E_NOT_OK,服务执行失败
10:DCM_E_PENDING,服务未完成,需要继续请求
12:DCM_E_FORCE_RCRRP,应用层请求回复NRC 0x78
如果返回E_NOT_OK,一般还需要返回对应的否定响应码(NRC)
DCM_E_PENDING即为本文需求需要实现的返回值
DCM_E_PENDING和DCM_E_FORCE_RCRRP的区别:
当返回DCM_E_PENDING时,若P2Server还未达到设定返回NRC78的时间