Divide and Conquer Multiple Defined Fixed-Length File Regions
When performing a full-table scan of a large data file, a significant speed-up can be achieved by running multiple threads to process different parts (regions) of the data file simultaneously.
In V12 and later, GetFileRegions() divides the data record offsets for a specified number of regions for a fixed-length record data file. The caller specifies the number of regions and the function populates an array of offset-length pairs. Each offset-length pair defines a region, which is simply a set of records in the data file. An application can process a data file's records in parallel by assigning a different thread to process each region.