Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 2773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2784 }; | 2784 }; |
| 2785 | 2785 |
| 2786 enum GCCallbackFlags { | 2786 enum GCCallbackFlags { |
| 2787 kNoGCCallbackFlags = 0, | 2787 kNoGCCallbackFlags = 0, |
| 2788 kGCCallbackFlagCompacted = 1 << 0 | 2788 kGCCallbackFlagCompacted = 1 << 0 |
| 2789 }; | 2789 }; |
| 2790 | 2790 |
| 2791 typedef void (*GCPrologueCallback)(GCType type, GCCallbackFlags flags); | 2791 typedef void (*GCPrologueCallback)(GCType type, GCCallbackFlags flags); |
| 2792 typedef void (*GCEpilogueCallback)(GCType type, GCCallbackFlags flags); | 2792 typedef void (*GCEpilogueCallback)(GCType type, GCCallbackFlags flags); |
| 2793 | 2793 |
| 2794 typedef void (*GCCallback)(); | |
| 2795 | |
| 2796 | 2794 |
| 2797 /** | 2795 /** |
| 2798 * Collection of V8 heap information. | 2796 * Collection of V8 heap information. |
| 2799 * | 2797 * |
| 2800 * Instances of this class can be passed to v8::V8::HeapStatistics to | 2798 * Instances of this class can be passed to v8::V8::HeapStatistics to |
| 2801 * get heap statistics from V8. | 2799 * get heap statistics from V8. |
| 2802 */ | 2800 */ |
| 2803 class V8EXPORT HeapStatistics { | 2801 class V8EXPORT HeapStatistics { |
| 2804 public: | 2802 public: |
| 2805 HeapStatistics(); | 2803 HeapStatistics(); |
| (...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3202 static void AddGCPrologueCallback( | 3200 static void AddGCPrologueCallback( |
| 3203 GCPrologueCallback callback, GCType gc_type_filter = kGCTypeAll); | 3201 GCPrologueCallback callback, GCType gc_type_filter = kGCTypeAll); |
| 3204 | 3202 |
| 3205 /** | 3203 /** |
| 3206 * This function removes callback which was installed by | 3204 * This function removes callback which was installed by |
| 3207 * AddGCPrologueCallback function. | 3205 * AddGCPrologueCallback function. |
| 3208 */ | 3206 */ |
| 3209 static void RemoveGCPrologueCallback(GCPrologueCallback callback); | 3207 static void RemoveGCPrologueCallback(GCPrologueCallback callback); |
| 3210 | 3208 |
| 3211 /** | 3209 /** |
| 3212 * The function is deprecated. Please use AddGCPrologueCallback instead. | |
| 3213 * Enables the host application to receive a notification before a | |
| 3214 * garbage collection. Allocations are not allowed in the | |
| 3215 * callback function, you therefore cannot manipulate objects (set | |
| 3216 * or delete properties for example) since it is possible such | |
| 3217 * operations will result in the allocation of objects. | |
| 3218 */ | |
| 3219 static void SetGlobalGCPrologueCallback(GCCallback); | |
|
Michael Starzinger
2013/01/23 17:39:07
I think it is better to mark this function as depr
yurys
2013/01/24 07:54:05
Done.
| |
| 3220 | |
| 3221 /** | |
| 3222 * Enables the host application to receive a notification after a | 3210 * Enables the host application to receive a notification after a |
| 3223 * garbage collection. Allocations are not allowed in the | 3211 * garbage collection. Allocations are not allowed in the |
| 3224 * callback function, you therefore cannot manipulate objects (set | 3212 * callback function, you therefore cannot manipulate objects (set |
| 3225 * or delete properties for example) since it is possible such | 3213 * or delete properties for example) since it is possible such |
| 3226 * operations will result in the allocation of objects. It is possible | 3214 * operations will result in the allocation of objects. It is possible |
| 3227 * to specify the GCType filter for your callback. But it is not possible to | 3215 * to specify the GCType filter for your callback. But it is not possible to |
| 3228 * register the same callback function two times with different | 3216 * register the same callback function two times with different |
| 3229 * GCType filters. | 3217 * GCType filters. |
| 3230 */ | 3218 */ |
| 3231 static void AddGCEpilogueCallback( | 3219 static void AddGCEpilogueCallback( |
| 3232 GCEpilogueCallback callback, GCType gc_type_filter = kGCTypeAll); | 3220 GCEpilogueCallback callback, GCType gc_type_filter = kGCTypeAll); |
| 3233 | 3221 |
| 3234 /** | 3222 /** |
| 3235 * This function removes callback which was installed by | 3223 * This function removes callback which was installed by |
| 3236 * AddGCEpilogueCallback function. | 3224 * AddGCEpilogueCallback function. |
| 3237 */ | 3225 */ |
| 3238 static void RemoveGCEpilogueCallback(GCEpilogueCallback callback); | 3226 static void RemoveGCEpilogueCallback(GCEpilogueCallback callback); |
| 3239 | 3227 |
| 3240 /** | 3228 /** |
| 3241 * The function is deprecated. Please use AddGCEpilogueCallback instead. | |
| 3242 * Enables the host application to receive a notification after a | |
| 3243 * major garbage collection. Allocations are not allowed in the | |
| 3244 * callback function, you therefore cannot manipulate objects (set | |
| 3245 * or delete properties for example) since it is possible such | |
| 3246 * operations will result in the allocation of objects. | |
| 3247 */ | |
| 3248 static void SetGlobalGCEpilogueCallback(GCCallback); | |
|
Michael Starzinger
2013/01/23 17:39:07
Likewise.
yurys
2013/01/24 07:54:05
Done.
| |
| 3249 | |
| 3250 /** | |
| 3251 * Enables the host application to provide a mechanism to be notified | 3229 * Enables the host application to provide a mechanism to be notified |
| 3252 * and perform custom logging when V8 Allocates Executable Memory. | 3230 * and perform custom logging when V8 Allocates Executable Memory. |
| 3253 */ | 3231 */ |
| 3254 static void AddMemoryAllocationCallback(MemoryAllocationCallback callback, | 3232 static void AddMemoryAllocationCallback(MemoryAllocationCallback callback, |
| 3255 ObjectSpace space, | 3233 ObjectSpace space, |
| 3256 AllocationAction action); | 3234 AllocationAction action); |
| 3257 | 3235 |
| 3258 /** | 3236 /** |
| 3259 * Removes callback that was installed by AddMemoryAllocationCallback. | 3237 * Removes callback that was installed by AddMemoryAllocationCallback. |
| 3260 */ | 3238 */ |
| (...skipping 1588 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4849 | 4827 |
| 4850 | 4828 |
| 4851 } // namespace v8 | 4829 } // namespace v8 |
| 4852 | 4830 |
| 4853 | 4831 |
| 4854 #undef V8EXPORT | 4832 #undef V8EXPORT |
| 4855 #undef TYPE_CHECK | 4833 #undef TYPE_CHECK |
| 4856 | 4834 |
| 4857 | 4835 |
| 4858 #endif // V8_H_ | 4836 #endif // V8_H_ |
| OLD | NEW |