I'm not an IIS expert by any means but I'm not sure where else you could ask a question like this.
Usually, waiting for synchronization usually means one thread started a worker thread to do something and it's waiting for that something to finish. When it comes to IIS, it's probably more likely adding up all of the time between BeginRequest and EndRequest, which is the difference between the time that a request came in and the time it was satisfied. A slow network connection may be to blame.
A bunch of threads running listeners are going to show up in Performance Profiler as "Waiting for IO to complete", so I think that's the metric you're looking for.