This article was previously published under Q160819
This article has been archived. It is offered "as is" and will no longer be updated.
Moderate: Requires basic macro, coding, and interoperability skills.
When you use System Monitor in Microsoft Windows 95, Microsoft Windows 98, and Microsoft Windows Millennium Edition (Me) or Performance Monitor in Microsoft Windows NT and Microsoft Windows 2000 to track CPU usage, Microsoft Access is reported to use 100 percent of CPU resources even though it appears that Microsoft Access is idle.
During idle time, Microsoft Access continuously polls its message queue to check for keyboard and mouse activity.
This behavior does not occur in Microsoft Access 2000.
Microsoft Access was originally designed to operate in the cooperative multitasking environment that Microsoft Windows 3.x provides. The idle processing code built into Microsoft Access was designed to make sure that Microsoft Access does not start processing background tasks during brief periods of inactivity, such as when a user pauses between keystrokes. In the preemptive multitasking environment of Windows 95, Windows 98, Windows Millennium Edition, Windows NT, and Windows 2000, this idle processing code causes Microsoft Access to use 100 percent of CPU resources briefly during idle time.
Note Windows 95 uses preemptive multitasking for 32-bit Windows applications and, for backward compatibility, uses cooperative multitasking for 16-bit Windows applications (applications that are written for Windows 3.x).
Microsoft Access polls its message queues for activity for about the first 30 seconds of idle time. During this time, Performance Monitor reports that Microsoft Access is using 100 percent of CPU resources.
Note Microsoft Access only uses CPU resources that are idle. If your computer has other processes that are ready to run, it will run them. Microsoft Access does not decrease the performance of other applications as it polls its message queues.
Steps to Reproduce the Behavior
In Microsoft Windows 2000, start the Task Manager, and then click the Performance tab.
Start Access and make sure that it is running in a non-maximized window.
Open the sample database Northwind.mdb.
Open the Shippers table and enter at least one new record.
Switch to Notepad.
Notice the CPU usage history. For first 20 to 30 seconds of the time that Access loses focus, there should be a 100 percent processor spike.