数据队列push函数内put_index溢出不会存在问题吗?

发布于 2020-08-29 18:01:10

数据队列push数据后,rt_data_queue_push内put_index+=1,那如果put_index从0xFFFF变成0x0000后,再次push数据时,队列的写入位置“queue->put_index % queue->size”不会出错吗?感觉溢出后,写入位置可能不连续会串位呢,就是下面代码:

    queue->queue[queue->put_index % queue->size].data_ptr  = data_ptr;
    queue->queue[queue->put_index % queue->size].data_size = data_size;
    queue->put_index += 1;

查看更多

关注者
0
被浏览
167
JQRR_7669
JQRR_7669 认证专家 2020-08-29

可能会串位,但不会出错,因为get_index的算法也一样。同样的算法、同样的路线。

1 个回答

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友