switched to boost::sync_bounded_queue