I've always wished I would be able to cancel the background compiler in the Delphi IDE, because it often kicks in at a time when its not wanted (ie, it kicks in to prepare code completion, but I already know what I'm doing). Before Delphi 2009, this was not possible.
However, in Delphi 2009, there is an undocumented feature to enable this! If you want to test out code which allows the code completion compilation (aka "Kibitz compile") to be canceled, add the following registry key under the HKCU\Software\CodeGear\BDS\6.0\Globals key (choose the string value type):
UserCanCancelKibitzing=1
After restarting the IDE, you should now be able to stop background compiling by pressing ESC or moving the mouse.
Currently this only works for the Delphi compiler but NOT C++.
It is a totally undocumented, and unsupported "feature" in the latest Delphi. But please, don't let that hold you back from checking it out. :)