I am decoding an image file: the file has tagged header info mixed with 4K pixel code blocks.

Platform is primarily windows, but could be osx or linux.

Once I read in a code block, I can launch (asynchronously) my decode routine on this block, while continuing to read the file for header info and code blocks.

Currently, I do synchronous reads using fread(...).

Is is worthwhile to switch to boost asio to asynchronously read in the code blocks? The read callback could trigger my decode routine. But I wouldn't have to wait for the read before I carry on to the next code block.

If so, can anyone point me to a reference/tutorial covering boost::asio asynch reads from disk?