mutex lock for empty?, clear on purge, push return self
stress test