5 ms·
> First, [hoisting a subcomponent into its own process] requires decoupling the code and making it asynchronous, which is usually time-consuming and may impose
by wahern 5y ago
> First, [hoisting a subcomponent into its own process] requires decoupling the code and making it asynchronous, which is usually time-consuming and may impose a performance cost.
It may need to be asynchronous because of Firefox's peculiar infrastructure for process isolation, but if the intraprocess calls can be synchronous, the interprocess function calls could in principle also be synchronous. By default that's literally how most syscalls work, at least in Unix-like systems. And it's the direction microkernels seemed to have turned--synchronous calls work just fine, and you don't need a bunch of specialized asynchronous calling infrastructure inside the kernel itself.
This seems like a classic case of using a novel solution to subtly redefine the problem. If you just redefined the problem at the outset you wouldn't need so much contrivance.