Rank: Member Groups: Member
Joined: 2/12/2020 Posts: 14
|
Chromium 110 released a "Memory Saver" mode along with several "high efficiency" options. Can/should these options be enabled in EO? https://googlechromecast.com/enable-google-chromes-high-efficiency-mode-and-battery-saver-mode/
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,206
|
Hi,
This is not supported. Memory saver works by discarding some tabs based on a set policy (for example, to discard a tab if it has been inactive after a certain amount of time). With EO.WebBrowser a "tab" is represented by a WebView. In order to support such mode, additional interface would need to be added to the WebView in order to coordinate with the browser engine on when it is activated/deactivated/discarded/reloaded, etc. This can signficaintly complicate the WebView object's life cycle and programming interface, thus add unnecessary burdens to most users who would not use such feature. Most important of all, the strategy used to save memory is limited by how the browser engine implements it and even advanced programmers can't fine tune it.
On the other hand, advanced programmer can easily implement such policy in their code directly based on whatever strategy that fits their need outside of the browser engine. For example, for a UI based application, they can code it so that an in activate tab (WebView) is immediately destroyed to save the maximum amout of memory, or destroyed after a set idle time to balance between memory usage and performance. For a non-UI app, they can control how many WebView they create internally, etc. We believe this is a better option because it gives advanced programmer maximium flexibility while still preserve the simplicity for less advanced programmers. As a result, we do not believe it's a good idea to support this directly on the library.
Thanks!
|