I am using AVAssetReader to read audio data from a file, on a secondary thread. Every code example I have seen has at the heart of it a loop like this:
AVAssetReader