Some MSDN articles say that synchronous event receivers run under w3wp.exe, and asynchronous event receivers run under owstimer.exe.
For eg, this one:
First of all, I was not aware of this change in 2010, and I have been attaching event receivers to w3wp.exe in order to debug them like since forever.
So this was contrary to my experience, so I decided to try this out myself, to confirm it.
So I created a simple event receiver, specifically mentioned <Synchronization>Asynchronous</Synchronization>
in my elements.xml, stopped the sharepoint timer service to kill the owstimer.exe process, attached the event receiver to the w3wp.exe, and I was able to debug all the asynchronous event receivers without any problem. Same was the case even when owstimer.exe was up and running.
So what is the deal here? Am I missing something? Or is MSDN wrong here?
EDIT
Further experiments confirm that asynchronous event receivers fire in a different thread by default. But they are still running under the w3wp.exe process.