* Dequeue several objects from a ring. * * This function calls the multi-consumers or the single-consumer * version, depending on the default behaviour that was specified at * ring creation time (see flags). * * @param r * A pointer to the ring structure. * @param obj_table * A pointer to a table of void * pointers (objects) that will be filled. * @param n * The number of objects
| 408 | * The number of objects dequeued, either 0 or n |
| 409 | */ |
| 410 | static __rte_always_inline unsigned int |
| 411 | rte_ring_dequeue_bulk(struct rte_ring *r, void **obj_table, unsigned int n, |
| 412 | unsigned int *available) |
| 413 | { |
| 414 | return rte_ring_dequeue_bulk_elem(r, obj_table, sizeof(void *), |
| 415 | n, available); |
| 416 | } |
| 417 | |
| 418 | /** |
| 419 | * Dequeue one object from a ring (multi-consumers safe). |