IoBuildAsynchronousFsdRequest completion routine called mostly synchronously

Greetings!
I am trying to use IoBuildAsynchronousFsdRequest in the hope of faster writes to a file. I am not using any event to check for the completion of the write as in my opinion waiting on the event in the caller thread to get signaled from the completion routine will make the write synchronous, defeating the purpose of the async write. No problems so far running under verifier and the file gets written fine.
But I see that out of say 100000 writes, the completion routine gets called ~99% of the time by the caller Tail.Overlay.Thread itself, and very rarely by other arbitrary threads. This effectively is making the writes synchronous. I want the caller thread to just be busy issuing the writes and ideally not handle the completions. Can this be improved?

filesystem buffered writes can be completed inline as they are essentially
memcpy operations.

Mark Roddy

Exactly what Mr. @Mark_Roddy said. Exactly.