If some code is running away (in a clever way) there is no way to stop and inspect that code in the web inspector as it itself is blocked by that code. Reasons this can happen: Code that consumes a lot of memory (but without hitting the js limits), sets lots of timeouts (so each javascript timeout that you acknowledge is immediately followed by more processing). This needs to change. The debugger needs to be able to always and reliably (and with low latency) be able to stop javascript exectuion.
This should be possible in Chromium where the front-end runs in its own process different from that of the inspected page and can pause current script even if it's in a tight loop.
<rdar://problem/19281497>
<rdar://problem/19281631>