Iterable Dataset in C++

Is there an example of writing custom dataset class for IteratrableDataset in C++? Is it even possible? I see this example for map-styled dataset.

My goal is to write a custom DataLoader in C++ where multiple workers are working in parallel to fetch samples from a database. If num_workers > 1, does prefetch in C++ work in the same way as in python, except it uses multi-threading and is not subject to the problems of GIL?