Currently, extension port creation uses a sync IPC. This is terrible for a few reasons:
1. Sync IPCs are always terrible
2. This can happen on the critical path to document parsing, e.g. in a content script that executes at document_start
3. It can be slow enough to cause a renderer hang (issue 528837)
4. Sync IPCs are always terrible
We should asyncify this. It'll be a bit tricky at parts, but I think it can be done without too much pain.
Comment 1 by rdevlin....@chromium.org
, Sep 2 2016