The problem is how you test. No speed test in a Debug assembly makes sense in any way. That's why you should always have a profile in the Tools. It uses the Release assembly. For realistic results, profile in Tools on your device. Everything else is an illusion.
So make the Release build, not the Debug build. You will see that you actually get print statements instantly.
Results (on my computer, not on the device, because I was too lazy to pull the phone out of my pocket), displaying seconds from the reference date:
starting 506917910.056674 done appending 506917910.060245 done 506917910.069827
source share