Reading concurrently
Hi,
Not an issue, rather a question
I am getting familiar VDS and I am trying to read a slice of data from a VDS file, I split the slice (e.g., [1,0:1000,0:500]) into several portions along one axis (e.g.,[1,0:200,0:500],[1,200:400,0:500],[1,400:600,0:500],...) and try to read them with requestVolumeSubset concurrently using multiprocessing module, but even though the reading in each thread starts simultaneously (confirmed by text output), it looks like actual reading happens consecutively, one portion after another.
I tried opening vds file in the main thread and use the identifier in the threads (concurrent.futures allows it) and to open the file separately in each thread - in first case reading of each portion starts after previous has finished as if in a single thread, in the second case the reading starts simultaneously, but each portion is read way longer than normal taking overall same time as in the first case.
So the question is: Is there a some sort of queueing system for reading in the openvds library or it is just limitation of free version? Can reading data by pages resolve it?
Sorry, no code snippet as I am not sure if I am allowed to post the code
Platform: Windows API: Python
Thank you, Vasilii