Found while investigating #25021

ElectronBrowserMainParts has a periodic timer that is used to trigger GC once a minute even on an idle system. While one wakeup per minute isn't bad, it's also been in there [since 2014](https://github.com/electron/electron/commit/4dd78480846557370dd53789d50e6cb0d6a81bcd) and may or may not still be necessary. It might be worth seeing what happens to memory overhead if this is disabled and/or triggered with a different mechanism.

```c++
  // Start idle gc.
  gc_timer_.Start(
      FROM_HERE, base::TimeDelta::FromMinutes(1),
      base::Bind(&v8::Isolate::LowMemoryNotification,
                 base::Unretained(js_env_->isolate())));
```


shell/browser/electron_browser_main_parts.cc
DCHECK(self_);
  return self_;
}
bool ElectronBrowserMainParts::SetExitCode(int code) {
  if (!exit_code_)
    return false;
  *exit_code_ = code;
  return true;
}
int ElectronBrowserMainParts::GetExitCode() {
  return exit_code_ != nullptr ? *exit_code_ : 0;
}
void ElectronBrowserMainParts::RegisterDestructionCallback(
    base::OnceClosure callback) {
  
  
  
  destructors_.insert(destructors_.begin(), std::move(callback));
}
int ElectronBrowserMainParts::PreEarlyInitialization() {
  field_trial_list_ = std::make_unique<base::FieldTrialList>(nullptr);
#if defined(OS_LINUX)
  OverrideLinuxAppDataPath();
#endif
#if defined(OS_POSIX)
  HandleSIGCHLD();
#endif
  return content::RESULT_CODE_NORMAL_EXIT;
}
void ElectronBrowserMainParts::PostEarlyInitialization() {