Weston Pace created ARROW-11680:
-----------------------------------
Summary: Add vendored version of folly's spsc queue
Key: ARROW-11680
URL: https://issues.apache.org/jira/browse/ARROW-11680
Project: Apache Arrow
Issue Type: Sub-task
Components: C++
Reporter: Weston Pace
Assignee: Weston Pace
Rationale for vendoring:
Folly contains hundreds of files, requires boost & C++14. The
ProducerConsumerQueue class could be extracted out of three of those files and
hasn't been changed since 2018. The queue does not appear to have any open
issues.
Comparisons with alternatives:
I have included a benchmark comparing folly with boost (since
boost::lockfree::spsc_queue is already included in arrow, I think). Boost does
not support a move workflow for spsc_queue and performs worse.
I have not compared with any other alternatives but the utility is small and
straightforward enough I am doubtful there would be significant differences.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)