The Engine’s Two Modes

Microsoft Jet has two modes of operation when it comes to transaction processing: synchronous and asynchronous. Synchronous processing was the only mode available in version 2.x of the engine.

Synchronous processing allows nothing else to occur until the current operation is completed. This is the model that Microsoft Jet 2.x follows.

Asynchronous processing involves the engine queuing up a series of changes to the database. For example, several recordset Update methods could be grouped together. At some point, these updates are written to disk and the engine begins grouping new changes. The updates occur when one the following happens:

To better understand these modes, consider the following DAO code:

Set rst = dbs.OpenRecordset("SELECT * FROM Customers")
While Not rst.EOF
 	rst.Edit
  	'......
  	rst.Update
  	rst.MoveNext
Wend

With synchronous processing, Microsoft Jet would not continue the loop until rst.Update completed successfully.

With asynchronous processing, Microsoft Jet would immediately process rst.Update, and while it was using a thread to do the work, would continue on another thread to process rst.MoveNext.

Microsoft Jet places temporary files on disk according to the paths specified by the TEMP environment variable. The behavior is the same for Windows 95 and Windows NT Workstation or Windows NT Server.