Chromium Code Reviews| Index: components/startup_metric_utils/common/pre_read_field_trial_utils_win.h |
| diff --git a/components/startup_metric_utils/common/pre_read_field_trial_utils_win.h b/components/startup_metric_utils/common/pre_read_field_trial_utils_win.h |
| index 612f76b2f43d39cc88436d2e7948ca2b9e11600b..b124ddb11a9698643a387014708f462ca495c7de 100644 |
| --- a/components/startup_metric_utils/common/pre_read_field_trial_utils_win.h |
| +++ b/components/startup_metric_utils/common/pre_read_field_trial_utils_win.h |
| @@ -19,19 +19,29 @@ namespace startup_metric_utils { |
| using RegisterPreReadSyntheticFieldTrialCallback = |
| const base::Callback<bool(const std::string&, const std::string&)>; |
| -// Get DLL pre-reading options. |product_registry_path| is the registry path |
| -// under which the registry key for this field trial resides. The |no_pre_read| |
| -// option is set if DLLs should not be pre-read. The |high_priority| option is |
| -// set if pre-reading should be done with a high thread priority. The |
| -// |only_if_cold| option is set if only cold DLLs should be pre-read. The |
| -// |prefetch_virtual_memory| option is set if the |
| -// ::PrefetchVirtualMemory function should be used to pre-read DLLs, if |
| -// available. |
| -void GetPreReadOptions(const base::string16& product_registry_path, |
| - bool* no_pre_read, |
| - bool* high_priority, |
| - bool* only_if_cold, |
| - bool* prefetch_virtual_memory); |
| +// The options controlled by the PreRead field trial. |
| +enum PreReadOptions { |
| + // No explicit DLL pre-reading. |
| + PRE_READ_OPTION_NO_PRE_READ = 1 << 0, |
| + |
| + // Pre-read DLLs with a high thread priority. |
| + PRE_READ_OPTION_HIGH_PRIORITY = 1 << 1, |
| + |
| + // Pre-read DLLs only when they are cold. |
| + PRE_READ_OPTION_ONLY_IF_COLD = 1 << 2, |
| + |
| + // Pre-read DLLs using the ::PrefetchVirtualMemory function, if available. |
| + PRE_READ_OPTION_PREFETCH_VIRTUAL_MEMORY = 1 << 3, |
| +}; |
| + |
| +// Initializes DLL pre-reading options from the registry. |
| +// |product_registry_path| is the registry path under which the registry key for |
| +// this field trial resides. |
| +void InitializePreReadOptions(const base::string16& product_registry_path); |
| + |
| +// Returns the DLL pre-reading options to use for the current process. |
|
gab
2016/01/20 20:09:40
Returns the bitfield of the DLL pre-reading option
fdoray
2016/01/20 21:58:53
Done.
|
| +// InitializePreReadOptions() must have been called before this. |
| +int GetPreReadOptions(); |
| // Updates DLL pre-reading options in the registry with the latest info for the |
| // next startup. |product_registry_path| is the registry path under which the |