1) Initialize device with 1 (ONE) megabyte of cache (0 allocated default). You don't need ANY memory for grabbing. So in your case you're just wasting the resources.
2) Use CreateEx instead of Create. This would make StarBurn to use native SCSI Pass Thru Interface instead of ASPI wrapper.
3) Apply 1) and 2) and let us know did it help or not.
novalis wrote:
Well, I'm not sure what kind of information you're looking for but here goes...
The app is a fairly standard multi-threaded MFC dialog based app written in C++. Each drive is ripped from in it's own thread. I call StarBurn_CdvdBurnerGrabber_Create() to access the drives, and request a 64MB buffer for each of them. Each thread runs at the same priority level and the apps process level is raised to "real-time". I'm not sure which I/O you're referring to with the async question, HD, CD-ROM? And what is considered proper design?