Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(65)

Side by Side Diff: include/v8-profiler.h

Issue 12413027: Mark non-isolatified profiler API as V8_DEPRECATED (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebase Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | test/cctest/test-heap-profiler.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 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 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 /** 166 /**
167 * A note on security tokens usage. As scripts from different 167 * A note on security tokens usage. As scripts from different
168 * origins can run inside a single V8 instance, it is possible to 168 * origins can run inside a single V8 instance, it is possible to
169 * have functions from different security contexts intermixed in a 169 * have functions from different security contexts intermixed in a
170 * single CPU profile. To avoid exposing function names belonging to 170 * single CPU profile. To avoid exposing function names belonging to
171 * other contexts, filtering by security token is performed while 171 * other contexts, filtering by security token is performed while
172 * obtaining profiling results. 172 * obtaining profiling results.
173 */ 173 */
174 174
175 /** Deprecated. Use GetProfileCount instead. */ 175 /** Deprecated. Use GetProfileCount instead. */
176 static int GetProfilesCount(); 176 V8_DEPRECATED(static int GetProfilesCount());
177 /** 177 /**
178 * Returns the number of profiles collected (doesn't include 178 * Returns the number of profiles collected (doesn't include
179 * profiles that are being collected at the moment of call.) 179 * profiles that are being collected at the moment of call.)
180 */ 180 */
181 int GetProfileCount(); 181 int GetProfileCount();
182 182
183 /** Deprecated. Use GetCpuProfile instead. */ 183 /** Deprecated. Use GetCpuProfile instead. */
184 static const CpuProfile* GetProfile( 184 V8_DEPRECATED(static const CpuProfile* GetProfile(
185 int index, 185 int index,
186 Handle<Value> security_token = Handle<Value>()); 186 Handle<Value> security_token = Handle<Value>()));
187 /** Returns a profile by index. */ 187 /** Returns a profile by index. */
188 const CpuProfile* GetCpuProfile( 188 const CpuProfile* GetCpuProfile(
189 int index, 189 int index,
190 Handle<Value> security_token = Handle<Value>()); 190 Handle<Value> security_token = Handle<Value>());
191 191
192 /** Deprecated. Use FindProfile instead. */ 192 /** Deprecated. Use FindProfile instead. */
193 static const CpuProfile* FindProfile( 193 V8_DEPRECATED(static const CpuProfile* FindProfile(
194 unsigned uid, 194 unsigned uid,
195 Handle<Value> security_token = Handle<Value>()); 195 Handle<Value> security_token = Handle<Value>()));
196 /** Returns a profile by uid. */ 196 /** Returns a profile by uid. */
197 const CpuProfile* FindCpuProfile( 197 const CpuProfile* FindCpuProfile(
198 unsigned uid, 198 unsigned uid,
199 Handle<Value> security_token = Handle<Value>()); 199 Handle<Value> security_token = Handle<Value>());
200 200
201 /** Deprecated. Use StartCpuProfiling instead. */ 201 /** Deprecated. Use StartCpuProfiling instead. */
202 static void StartProfiling(Handle<String> title, bool record_samples = false); 202 V8_DEPRECATED(static void StartProfiling(Handle<String> title,
203 bool record_samples = false));
203 /** 204 /**
204 * Starts collecting CPU profile. Title may be an empty string. It 205 * Starts collecting CPU profile. Title may be an empty string. It
205 * is allowed to have several profiles being collected at 206 * is allowed to have several profiles being collected at
206 * once. Attempts to start collecting several profiles with the same 207 * once. Attempts to start collecting several profiles with the same
207 * title are silently ignored. While collecting a profile, functions 208 * title are silently ignored. While collecting a profile, functions
208 * from all security contexts are included in it. The token-based 209 * from all security contexts are included in it. The token-based
209 * filtering is only performed when querying for a profile. 210 * filtering is only performed when querying for a profile.
210 * 211 *
211 * |record_samples| parameter controls whether individual samples should 212 * |record_samples| parameter controls whether individual samples should
212 * be recorded in addition to the aggregated tree. 213 * be recorded in addition to the aggregated tree.
213 */ 214 */
214 void StartCpuProfiling(Handle<String> title, bool record_samples = false); 215 void StartCpuProfiling(Handle<String> title, bool record_samples = false);
215 216
216 /** Deprecated. Use StopCpuProfiling instead. */ 217 /** Deprecated. Use StopCpuProfiling instead. */
217 static const CpuProfile* StopProfiling( 218 V8_DEPRECATED(static const CpuProfile* StopProfiling(
218 Handle<String> title, 219 Handle<String> title,
219 Handle<Value> security_token = Handle<Value>()); 220 Handle<Value> security_token = Handle<Value>()));
220 /** 221 /**
221 * Stops collecting CPU profile with a given title and returns it. 222 * Stops collecting CPU profile with a given title and returns it.
222 * If the title given is empty, finishes the last profile started. 223 * If the title given is empty, finishes the last profile started.
223 */ 224 */
224 const CpuProfile* StopCpuProfiling( 225 const CpuProfile* StopCpuProfiling(
225 Handle<String> title, 226 Handle<String> title,
226 Handle<Value> security_token = Handle<Value>()); 227 Handle<Value> security_token = Handle<Value>());
227 228
228 /** Deprecated. Use DeleteAllCpuProfiles instead. */ 229 /** Deprecated. Use DeleteAllCpuProfiles instead. */
229 static void DeleteAllProfiles(); 230 V8_DEPRECATED(static void DeleteAllProfiles());
230 /** 231 /**
231 * Deletes all existing profiles, also cancelling all profiling 232 * Deletes all existing profiles, also cancelling all profiling
232 * activity. All previously returned pointers to profiles and their 233 * activity. All previously returned pointers to profiles and their
233 * contents become invalid after this call. 234 * contents become invalid after this call.
234 */ 235 */
235 void DeleteAllCpuProfiles(); 236 void DeleteAllCpuProfiles();
236 237
237 private: 238 private:
238 CpuProfiler(); 239 CpuProfiler();
239 ~CpuProfiler(); 240 ~CpuProfiler();
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 /** 419 /**
419 * Callback function invoked for obtaining RetainedObjectInfo for 420 * Callback function invoked for obtaining RetainedObjectInfo for
420 * the given JavaScript wrapper object. It is prohibited to enter V8 421 * the given JavaScript wrapper object. It is prohibited to enter V8
421 * while the callback is running: only getters on the handle and 422 * while the callback is running: only getters on the handle and
422 * GetPointerFromInternalField on the objects are allowed. 423 * GetPointerFromInternalField on the objects are allowed.
423 */ 424 */
424 typedef RetainedObjectInfo* (*WrapperInfoCallback) 425 typedef RetainedObjectInfo* (*WrapperInfoCallback)
425 (uint16_t class_id, Handle<Value> wrapper); 426 (uint16_t class_id, Handle<Value> wrapper);
426 427
427 /** Deprecated. Use GetSnapshotCount instead. */ 428 /** Deprecated. Use GetSnapshotCount instead. */
428 static int GetSnapshotsCount(); 429 V8_DEPRECATED(static int GetSnapshotsCount());
429 /** Returns the number of snapshots taken. */ 430 /** Returns the number of snapshots taken. */
430 int GetSnapshotCount(); 431 int GetSnapshotCount();
431 432
432 /** Deprecated. Use GetHeapSnapshot instead. */ 433 /** Deprecated. Use GetHeapSnapshot instead. */
433 static const HeapSnapshot* GetSnapshot(int index); 434 V8_DEPRECATED(static const HeapSnapshot* GetSnapshot(int index));
434 /** Returns a snapshot by index. */ 435 /** Returns a snapshot by index. */
435 const HeapSnapshot* GetHeapSnapshot(int index); 436 const HeapSnapshot* GetHeapSnapshot(int index);
436 437
437 /** Deprecated. Use FindHeapSnapshot instead. */ 438 /** Deprecated. Use FindHeapSnapshot instead. */
438 static const HeapSnapshot* FindSnapshot(unsigned uid); 439 V8_DEPRECATED(static const HeapSnapshot* FindSnapshot(unsigned uid));
439 /** Returns a profile by uid. */ 440 /** Returns a profile by uid. */
440 const HeapSnapshot* FindHeapSnapshot(unsigned uid); 441 const HeapSnapshot* FindHeapSnapshot(unsigned uid);
441 442
442 /** Deprecated. Use GetObjectId instead. */ 443 /** Deprecated. Use GetObjectId instead. */
443 static SnapshotObjectId GetSnapshotObjectId(Handle<Value> value); 444 V8_DEPRECATED(static SnapshotObjectId GetSnapshotObjectId(
445 Handle<Value> value));
444 /** 446 /**
445 * Returns SnapshotObjectId for a heap object referenced by |value| if 447 * Returns SnapshotObjectId for a heap object referenced by |value| if
446 * it has been seen by the heap profiler, kUnknownObjectId otherwise. 448 * it has been seen by the heap profiler, kUnknownObjectId otherwise.
447 */ 449 */
448 SnapshotObjectId GetObjectId(Handle<Value> value); 450 SnapshotObjectId GetObjectId(Handle<Value> value);
449 451
450 /** 452 /**
451 * A constant for invalid SnapshotObjectId. GetSnapshotObjectId will return 453 * A constant for invalid SnapshotObjectId. GetSnapshotObjectId will return
452 * it in case heap profiler cannot find id for the object passed as 454 * it in case heap profiler cannot find id for the object passed as
453 * parameter. HeapSnapshot::GetNodeById will always return NULL for such id. 455 * parameter. HeapSnapshot::GetNodeById will always return NULL for such id.
454 */ 456 */
455 static const SnapshotObjectId kUnknownObjectId = 0; 457 static const SnapshotObjectId kUnknownObjectId = 0;
456 458
457 /** 459 /**
458 * Callback interface for retrieving user friendly names of global objects. 460 * Callback interface for retrieving user friendly names of global objects.
459 */ 461 */
460 class ObjectNameResolver { 462 class ObjectNameResolver {
461 public: 463 public:
462 /** 464 /**
463 * Returns name to be used in the heap snapshot for given node. Returned 465 * Returns name to be used in the heap snapshot for given node. Returned
464 * string must stay alive until snapshot collection is completed. 466 * string must stay alive until snapshot collection is completed.
465 */ 467 */
466 virtual const char* GetName(Handle<Object> object) = 0; 468 virtual const char* GetName(Handle<Object> object) = 0;
467 protected: 469 protected:
468 virtual ~ObjectNameResolver() {} 470 virtual ~ObjectNameResolver() {}
469 }; 471 };
470 472
471 /** Deprecated. Use TakeHeapSnapshot instead. */ 473 /** Deprecated. Use TakeHeapSnapshot instead. */
472 static const HeapSnapshot* TakeSnapshot( 474 V8_DEPRECATED(static const HeapSnapshot* TakeSnapshot(
473 Handle<String> title, 475 Handle<String> title,
474 HeapSnapshot::Type type = HeapSnapshot::kFull, 476 HeapSnapshot::Type type = HeapSnapshot::kFull,
475 ActivityControl* control = NULL, 477 ActivityControl* control = NULL,
476 ObjectNameResolver* global_object_name_resolver = NULL); 478 ObjectNameResolver* global_object_name_resolver = NULL));
477 /** 479 /**
478 * Takes a heap snapshot and returns it. Title may be an empty string. 480 * Takes a heap snapshot and returns it. Title may be an empty string.
479 */ 481 */
480 const HeapSnapshot* TakeHeapSnapshot( 482 const HeapSnapshot* TakeHeapSnapshot(
481 Handle<String> title, 483 Handle<String> title,
482 ActivityControl* control = NULL, 484 ActivityControl* control = NULL,
483 ObjectNameResolver* global_object_name_resolver = NULL); 485 ObjectNameResolver* global_object_name_resolver = NULL);
484 486
485 487
486 /** Deprecated. Use StartTrackingHeapObjects instead. */ 488 /** Deprecated. Use StartTrackingHeapObjects instead. */
487 static void StartHeapObjectsTracking(); 489 V8_DEPRECATED(static void StartHeapObjectsTracking());
488 /** 490 /**
489 * Starts tracking of heap objects population statistics. After calling 491 * Starts tracking of heap objects population statistics. After calling
490 * this method, all heap objects relocations done by the garbage collector 492 * this method, all heap objects relocations done by the garbage collector
491 * are being registered. 493 * are being registered.
492 */ 494 */
493 void StartTrackingHeapObjects(); 495 void StartTrackingHeapObjects();
494 496
495 /** Deprecated. Use GetHeapStats instead. */ 497 /** Deprecated. Use GetHeapStats instead. */
496 static SnapshotObjectId PushHeapObjectsStats(OutputStream* stream); 498 V8_DEPRECATED(static SnapshotObjectId PushHeapObjectsStats(
499 OutputStream* stream));
497 /** 500 /**
498 * Adds a new time interval entry to the aggregated statistics array. The 501 * Adds a new time interval entry to the aggregated statistics array. The
499 * time interval entry contains information on the current heap objects 502 * time interval entry contains information on the current heap objects
500 * population size. The method also updates aggregated statistics and 503 * population size. The method also updates aggregated statistics and
501 * reports updates for all previous time intervals via the OutputStream 504 * reports updates for all previous time intervals via the OutputStream
502 * object. Updates on each time interval are provided as a stream of the 505 * object. Updates on each time interval are provided as a stream of the
503 * HeapStatsUpdate structure instances. 506 * HeapStatsUpdate structure instances.
504 * The return value of the function is the last seen heap object Id. 507 * The return value of the function is the last seen heap object Id.
505 * 508 *
506 * StartTrackingHeapObjects must be called before the first call to this 509 * StartTrackingHeapObjects must be called before the first call to this
507 * method. 510 * method.
508 */ 511 */
509 SnapshotObjectId GetHeapStats(OutputStream* stream); 512 SnapshotObjectId GetHeapStats(OutputStream* stream);
510 513
511 /** Deprecated. Use StopTrackingHeapObjects instead. */ 514 /** Deprecated. Use StopTrackingHeapObjects instead. */
512 static void StopHeapObjectsTracking(); 515 V8_DEPRECATED(static void StopHeapObjectsTracking());
513 /** 516 /**
514 * Stops tracking of heap objects population statistics, cleans up all 517 * Stops tracking of heap objects population statistics, cleans up all
515 * collected data. StartHeapObjectsTracking must be called again prior to 518 * collected data. StartHeapObjectsTracking must be called again prior to
516 * calling PushHeapObjectsStats next time. 519 * calling PushHeapObjectsStats next time.
517 */ 520 */
518 void StopTrackingHeapObjects(); 521 void StopTrackingHeapObjects();
519 522
520 /** Deprecated. Use DeleteAllHeapSnapshots instead. */ 523 /** Deprecated. Use DeleteAllHeapSnapshots instead. */
521 static void DeleteAllSnapshots(); 524 V8_DEPRECATED(static void DeleteAllSnapshots());
522 /** 525 /**
523 * Deletes all snapshots taken. All previously returned pointers to 526 * Deletes all snapshots taken. All previously returned pointers to
524 * snapshots and their contents become invalid after this call. 527 * snapshots and their contents become invalid after this call.
525 */ 528 */
526 void DeleteAllHeapSnapshots(); 529 void DeleteAllHeapSnapshots();
527 530
528 /** Deprecated. Use SetWrapperClassInfoProvider instead. */ 531 /** Deprecated. Use SetWrapperClassInfoProvider instead. */
529 static void DefineWrapperClass( 532 V8_DEPRECATED(static void DefineWrapperClass(
530 uint16_t class_id, 533 uint16_t class_id,
531 WrapperInfoCallback callback); 534 WrapperInfoCallback callback));
532 /** Binds a callback to embedder's class ID. */ 535 /** Binds a callback to embedder's class ID. */
533 void SetWrapperClassInfoProvider( 536 void SetWrapperClassInfoProvider(
534 uint16_t class_id, 537 uint16_t class_id,
535 WrapperInfoCallback callback); 538 WrapperInfoCallback callback);
536 539
537 /** 540 /**
538 * Default value of persistent handle class ID. Must not be used to 541 * Default value of persistent handle class ID. Must not be used to
539 * define a class. Can be used to reset a class of a persistent 542 * define a class. Can be used to reset a class of a persistent
540 * handle. 543 * handle.
541 */ 544 */
542 static const uint16_t kPersistentHandleNoClassId = 0; 545 static const uint16_t kPersistentHandleNoClassId = 0;
543 546
544 /** 547 /**
545 * Deprecated. Returns the number of currently existing persistent handles. 548 * Deprecated. Returns the number of currently existing persistent handles.
546 */ 549 */
547 static int GetPersistentHandleCount(); 550 V8_DEPRECATED(static int GetPersistentHandleCount());
548 551
549 /** Deprecated. Use GetHeapProfilerMemorySize instead. */ 552 /** Deprecated. Use GetHeapProfilerMemorySize instead. */
550 static size_t GetMemorySizeUsedByProfiler(); 553 V8_DEPRECATED(static size_t GetMemorySizeUsedByProfiler());
551 /** Returns memory used for profiler internal data and snapshots. */ 554 /** Returns memory used for profiler internal data and snapshots. */
552 size_t GetProfilerMemorySize(); 555 size_t GetProfilerMemorySize();
553 556
554 private: 557 private:
555 HeapProfiler(); 558 HeapProfiler();
556 ~HeapProfiler(); 559 ~HeapProfiler();
557 HeapProfiler(const HeapProfiler&); 560 HeapProfiler(const HeapProfiler&);
558 HeapProfiler& operator=(const HeapProfiler&); 561 HeapProfiler& operator=(const HeapProfiler&);
559 }; 562 };
560 563
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
646 }; 649 };
647 650
648 651
649 } // namespace v8 652 } // namespace v8
650 653
651 654
652 #undef V8EXPORT 655 #undef V8EXPORT
653 656
654 657
655 #endif // V8_V8_PROFILER_H_ 658 #endif // V8_V8_PROFILER_H_
OLDNEW
« no previous file with comments | « no previous file | test/cctest/test-heap-profiler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698