mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Support implicit detachment of CEF V8 references when the associated context is released (issue #484).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@881 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
@@ -252,6 +252,25 @@ typedef struct _cef_settings_t {
|
||||
// Chrome browser window.
|
||||
///
|
||||
int remote_debugging_port;
|
||||
|
||||
///
|
||||
// By default CEF V8 references will be invalidated (the IsValid() method will
|
||||
// return false) after the owning context has been released. This reduces the
|
||||
// need for external record keeping and avoids crashes due to the use of V8
|
||||
// references after the associated context has been released.
|
||||
//
|
||||
// CEF currently offers two context safety implementations with different
|
||||
// performance characteristics. The default implementation (value of 0) uses a
|
||||
// map of hash values and should provide better performance in situations with
|
||||
// a small number contexts. The alternate implementation (value of 1) uses a
|
||||
// hidden value attached to each context and should provide better performance
|
||||
// in situations with a large number of contexts.
|
||||
//
|
||||
// If you need better performance in the creation of V8 references and you
|
||||
// plan to manually track context lifespan you can disable context safety by
|
||||
// specifying a value of -1.
|
||||
///
|
||||
int context_safety_implementation;
|
||||
} cef_settings_t;
|
||||
|
||||
///
|
||||
|
@@ -300,6 +300,7 @@ struct CefSettingsTraits {
|
||||
&target->locales_dir_path, copy);
|
||||
target->pack_loading_disabled = src->pack_loading_disabled;
|
||||
target->remote_debugging_port = src->remote_debugging_port;
|
||||
target->context_safety_implementation = src->context_safety_implementation;
|
||||
}
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user