Add AtomicIntrusiveLinkedList::reverseSweep()
authorLovro Puzar <lovro@fb.com>
Thu, 16 Feb 2017 11:33:51 +0000 (03:33 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 16 Feb 2017 11:34:39 +0000 (03:34 -0800)
commitf54a0bdb714272ea06386dddb859258ecfacc754
tree472004704139bc7c50c5e1dbea15333e6efa2d83
parentb49a44c4fedd1c343bafa20de4ff5298321f8b1d
Add AtomicIntrusiveLinkedList::reverseSweep()

Summary: In D4558451 I want to pull elements off an atomic list onto a thread-local (single-consumer) vector and pop to get elements in insertion order.  A sweep that provides elements in LIFO order will avoid a redundant pair of list reversals.

Reviewed By: nbronson

Differential Revision: D4564816

fbshipit-source-id: 38cf50418e6afe0be3eec96ce85d571c65f06d7e
folly/AtomicIntrusiveLinkedList.h
folly/AtomicLinkedList.h
folly/test/AtomicLinkedListTest.cpp