This is exactly what is done. But Append does not guarantee order so several threads can push data in parallel, it is designed as a fast unordered stack.
In most cases this is not so important (for rendering mostly), if you really need order you’ll need 3 passes with a prefix sum, which is rather easy to do.