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

Side by Side Diff: chrome/browser/task_profiler/task_profiler_data_serializer_unittest.cc

Issue 2488073002: Reuse ThreadData instances associated with terminated named threads. (Closed)
Patch Set: rebase Created 4 years 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <string> 5 #include <string>
6 6
7 #include "base/json/json_writer.h" 7 #include "base/json/json_writer.h"
8 #include "base/process/process_handle.h" 8 #include "base/process/process_handle.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "base/tracked_objects.h" 10 #include "base/tracked_objects.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 } 47 }
48 48
49 { 49 {
50 // Non-empty data. 50 // Non-empty data.
51 tracked_objects::ProcessDataPhaseSnapshot process_data_phase; 51 tracked_objects::ProcessDataPhaseSnapshot process_data_phase;
52 52
53 tracked_objects::BirthOnThreadSnapshot parent; 53 tracked_objects::BirthOnThreadSnapshot parent;
54 parent.location.file_name = "path/to/foo.cc"; 54 parent.location.file_name = "path/to/foo.cc";
55 parent.location.function_name = "WhizBang"; 55 parent.location.function_name = "WhizBang";
56 parent.location.line_number = 101; 56 parent.location.line_number = 101;
57 parent.thread_name = "CrBrowserMain"; 57 parent.sanitized_thread_name = "CrBrowserMain";
58 58
59 tracked_objects::BirthOnThreadSnapshot child; 59 tracked_objects::BirthOnThreadSnapshot child;
60 child.location.file_name = "path/to/bar.cc"; 60 child.location.file_name = "path/to/bar.cc";
61 child.location.function_name = "FizzBoom"; 61 child.location.function_name = "FizzBoom";
62 child.location.line_number = 433; 62 child.location.line_number = 433;
63 child.thread_name = "Chrome_IOThread"; 63 child.sanitized_thread_name = "Chrome_IOThread";
64
65 64
66 // Add a snapshot. 65 // Add a snapshot.
67 process_data_phase.tasks.push_back(tracked_objects::TaskSnapshot()); 66 process_data_phase.tasks.push_back(tracked_objects::TaskSnapshot());
68 process_data_phase.tasks.back().birth = parent; 67 process_data_phase.tasks.back().birth = parent;
69 process_data_phase.tasks.back().death_data.count = 37; 68 process_data_phase.tasks.back().death_data.count = 37;
70 process_data_phase.tasks.back().death_data.run_duration_max = 5; 69 process_data_phase.tasks.back().death_data.run_duration_max = 5;
71 process_data_phase.tasks.back().death_data.run_duration_sample = 3; 70 process_data_phase.tasks.back().death_data.run_duration_sample = 3;
72 process_data_phase.tasks.back().death_data.run_duration_sum = 17; 71 process_data_phase.tasks.back().death_data.run_duration_sum = 17;
73 process_data_phase.tasks.back().death_data.queue_duration_max = 53; 72 process_data_phase.tasks.back().death_data.queue_duration_max = 53;
74 process_data_phase.tasks.back().death_data.queue_duration_sample = 13; 73 process_data_phase.tasks.back().death_data.queue_duration_sample = 13;
75 process_data_phase.tasks.back().death_data.queue_duration_sum = 79; 74 process_data_phase.tasks.back().death_data.queue_duration_sum = 79;
76 process_data_phase.tasks.back().death_data.alloc_ops = 127; 75 process_data_phase.tasks.back().death_data.alloc_ops = 127;
77 process_data_phase.tasks.back().death_data.free_ops = 120; 76 process_data_phase.tasks.back().death_data.free_ops = 120;
78 process_data_phase.tasks.back().death_data.allocated_bytes = 2013; 77 process_data_phase.tasks.back().death_data.allocated_bytes = 2013;
79 process_data_phase.tasks.back().death_data.freed_bytes = 1092; 78 process_data_phase.tasks.back().death_data.freed_bytes = 1092;
80 process_data_phase.tasks.back().death_data.alloc_overhead_bytes = 201; 79 process_data_phase.tasks.back().death_data.alloc_overhead_bytes = 201;
81 process_data_phase.tasks.back().death_data.max_allocated_bytes = 1500; 80 process_data_phase.tasks.back().death_data.max_allocated_bytes = 1500;
82 process_data_phase.tasks.back().death_thread_name = 81 process_data_phase.tasks.back().death_sanitized_thread_name =
83 "WorkerPool/-1340960768"; 82 "WorkerPool/-1340960768";
84 83
85 // Add a second snapshot. 84 // Add a second snapshot.
86 process_data_phase.tasks.push_back(tracked_objects::TaskSnapshot()); 85 process_data_phase.tasks.push_back(tracked_objects::TaskSnapshot());
87 process_data_phase.tasks.back().birth = child; 86 process_data_phase.tasks.back().birth = child;
88 process_data_phase.tasks.back().death_data.count = 41; 87 process_data_phase.tasks.back().death_data.count = 41;
89 process_data_phase.tasks.back().death_data.run_duration_max = 205; 88 process_data_phase.tasks.back().death_data.run_duration_max = 205;
90 process_data_phase.tasks.back().death_data.run_duration_sample = 203; 89 process_data_phase.tasks.back().death_data.run_duration_sample = 203;
91 process_data_phase.tasks.back().death_data.run_duration_sum = 2017; 90 process_data_phase.tasks.back().death_data.run_duration_sum = 2017;
92 process_data_phase.tasks.back().death_data.queue_duration_max = 2053; 91 process_data_phase.tasks.back().death_data.queue_duration_max = 2053;
93 process_data_phase.tasks.back().death_data.queue_duration_sample = 2013; 92 process_data_phase.tasks.back().death_data.queue_duration_sample = 2013;
94 process_data_phase.tasks.back().death_data.queue_duration_sum = 2079; 93 process_data_phase.tasks.back().death_data.queue_duration_sum = 2079;
95 process_data_phase.tasks.back().death_data.alloc_ops = 1207; 94 process_data_phase.tasks.back().death_data.alloc_ops = 1207;
96 process_data_phase.tasks.back().death_data.free_ops = 1200; 95 process_data_phase.tasks.back().death_data.free_ops = 1200;
97 process_data_phase.tasks.back().death_data.allocated_bytes = 20013; 96 process_data_phase.tasks.back().death_data.allocated_bytes = 20013;
98 process_data_phase.tasks.back().death_data.freed_bytes = 10092; 97 process_data_phase.tasks.back().death_data.freed_bytes = 10092;
99 process_data_phase.tasks.back().death_data.alloc_overhead_bytes = 2001; 98 process_data_phase.tasks.back().death_data.alloc_overhead_bytes = 2001;
100 process_data_phase.tasks.back().death_data.max_allocated_bytes = 15000; 99 process_data_phase.tasks.back().death_data.max_allocated_bytes = 15000;
101 process_data_phase.tasks.back().death_thread_name = "PAC thread #3"; 100 process_data_phase.tasks.back().death_sanitized_thread_name =
101 "PAC thread #3";
102 102
103 ExpectSerialization(process_data_phase, 239, 103 ExpectSerialization(process_data_phase, 239,
104 metrics::ProfilerEventProto::TrackedObject::RENDERER, 104 metrics::ProfilerEventProto::TrackedObject::RENDERER,
105 "{" 105 "{"
106 "\"list\":[{" 106 "\"list\":[{"
107 "\"birth_location\":{" 107 "\"birth_location\":{"
108 "\"file_name\":\"path/to/foo.cc\"," 108 "\"file_name\":\"path/to/foo.cc\","
109 "\"function_name\":\"WhizBang\"," 109 "\"function_name\":\"WhizBang\","
110 "\"line_number\":101" 110 "\"line_number\":101"
111 "}," 111 "},"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 "\"run_ms_max\":205," 148 "\"run_ms_max\":205,"
149 "\"run_ms_sample\":203" 149 "\"run_ms_sample\":203"
150 "}," 150 "},"
151 "\"death_thread\":\"PAC thread #3\"" 151 "\"death_thread\":\"PAC thread #3\""
152 "}]," 152 "}],"
153 "\"process_id\":239," 153 "\"process_id\":239,"
154 "\"process_type\":\"Tab\"" 154 "\"process_type\":\"Tab\""
155 "}"); 155 "}");
156 } 156 }
157 } 157 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698