зеркало из https://github.com/mozilla/gecko-dev.git
973cdcbc2e
I don't think this will fully resolve the shutdown hangs associated with this bug. The underlying problem is that writing the startup cache during shutdown can take a long time. This seems like A Bad Thing, and I have a mild leaning toward the thought that we shouldn't write the startup cache at all during shutdown. However, I do think that trading shutdown time regressions for startup time wins is probably good, so I don't feel super comfortable making that change. However, this change at least fixes the problem where we A) block the main thread waiting for the write to finish, and B) are more likely to hit a shutdown hang, since we concentrate all of the hang time in one phase, rather than it being spread across the shutdown timeline. This is likely the major change that the regressing bug introduced. The unfortunate consequence is that if we try to GetBuffer during shutdown, we will now read out of the omnijar. However, it should overall be better since we'll be waiting on a (hopefully) small number of small reads rather than a large write. Differential Revision: https://phabricator.services.mozilla.com/D86054 |
||
---|---|---|
.. | ||
test | ||
PStartupCache.ipdl | ||
StartupCache.cpp | ||
StartupCache.h | ||
StartupCacheChild.cpp | ||
StartupCacheChild.h | ||
StartupCacheInfo.cpp | ||
StartupCacheInfo.h | ||
StartupCacheParent.cpp | ||
StartupCacheParent.h | ||
StartupCacheUtils.cpp | ||
StartupCacheUtils.h | ||
components.conf | ||
moz.build | ||
nsIStartupCacheInfo.idl |