make .pop() atomic