Normally the system wait up to 20 seconds before it stalls a task but you can set-up windows in such a way that activated services end faster than usual. This method work in WinXP and vista and 7 i never try before =P
Step 2: type in "regedit"
Step 3 : go to "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control"
Open "WaitToKillServiceTimeOut" the picture shown below^^
by double kicking clicking it; change the parameter "20000" to "8000".At that setting, the system tasks will end in eight seconds.
note: Even tough you can go as low as 2 seconds, it's not recommended as even the tasks which are not hung could get disrupted.
If you don't find the entry in your registry, simply create a new one through "new/string".