os_time_tick = OSTimeGet() ;
if( os_time_tick >= GlobalFlag.last_send_cmd_time )
{
if(( os_time_tick - GlobalFlag.last_send_cmd_time ) < 300 )
{
//距上次发送小于3秒则退出
return ;
}
}
else
{
if(( 0x100000000 - GlobalFlag.last_send_cmd_time + os_time_tick ) < 300 )
{
//距上次发送小于3秒则退出
return ;
}
}
假定:时间100天后会从0重新开始,以上处理能有效防止临界点时的判断错误