Wie schon gesagt, das klingt ziemlich stark nach einer Race-Condition.
Vom Prinzip ermittle ich die Anzahl logischer CPU-Kerne, setze nacheinander jeden einzelnen Kern als aktiv, führe einen bestimmten Lesebefehl durch, und springe zum nächsten Kern weiter. Meine CPU hat 8 logische Kerne, und wenn ich die Schleife auf 5 begrenze, funktioniert alles noch. Erst ab dem 6. Kern kommt diese
Access Violation, die ich weiter oben beschrieben habe.
Hat das irgendeinen speziellen Grund, dass du nicht einfach direkt Threads verwendest?