| 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..cacf4b389cc7762c1299e1cee82b68d5f8d2a229 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.
|
| +struct PreReadOptions {
|
| + // No explicit DLL pre-reading.
|
| + bool no_pre_read;
|
| +
|
| + // Pre-read DLLs with a high thread priority.
|
| + bool high_priority;
|
| +
|
| + // Pre-read DLLs only when they are cold.
|
| + bool only_if_cold;
|
| +
|
| + // Pre-read DLLs using the ::PrefetchVirtualMemory function, if available.
|
| + bool prefetch_virtual_memory;
|
| +};
|
| +
|
| +// 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 bitfield of the DLL pre-reading options to use for the current
|
| +// process. InitializePreReadOptions() must have been called before this.
|
| +PreReadOptions 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
|
|
|