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

Side by Side Diff: net/socket/transport_client_socket_pool.cc

Issue 816543004: Update from https://crrev.com/308996 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 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
« no previous file with comments | « net/socket/ssl_session_cache_openssl.cc ('k') | net/tools/quic/end_to_end_test.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 (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 "net/socket/transport_client_socket_pool.h" 5 #include "net/socket/transport_client_socket_pool.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 void TransportConnectJob::MakeAddressListStartWithIPv4(AddressList* list) { 231 void TransportConnectJob::MakeAddressListStartWithIPv4(AddressList* list) {
232 for (AddressList::iterator i = list->begin(); i != list->end(); ++i) { 232 for (AddressList::iterator i = list->begin(); i != list->end(); ++i) {
233 if (i->GetFamily() == ADDRESS_FAMILY_IPV4) { 233 if (i->GetFamily() == ADDRESS_FAMILY_IPV4) {
234 std::rotate(list->begin(), i, list->end()); 234 std::rotate(list->begin(), i, list->end());
235 break; 235 break;
236 } 236 }
237 } 237 }
238 } 238 }
239 239
240 int TransportConnectJob::DoResolveHost() { 240 int TransportConnectJob::DoResolveHost() {
241 // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
242 tracked_objects::ScopedTracker tracking_profile(
243 FROM_HERE_WITH_EXPLICIT_FUNCTION(
244 "436634 TransportConnectJob::DoResolveHost"));
245
241 return helper_.DoResolveHost(priority(), net_log()); 246 return helper_.DoResolveHost(priority(), net_log());
242 } 247 }
243 248
244 int TransportConnectJob::DoResolveHostComplete(int result) { 249 int TransportConnectJob::DoResolveHostComplete(int result) {
250 // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
251 tracked_objects::ScopedTracker tracking_profile(
252 FROM_HERE_WITH_EXPLICIT_FUNCTION(
253 "436634 TransportConnectJob::DoResolveHostComplete"));
254
245 return helper_.DoResolveHostComplete(result, net_log()); 255 return helper_.DoResolveHostComplete(result, net_log());
246 } 256 }
247 257
248 int TransportConnectJob::DoTransportConnect() { 258 int TransportConnectJob::DoTransportConnect() {
259 // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
260 tracked_objects::ScopedTracker tracking_profile(
261 FROM_HERE_WITH_EXPLICIT_FUNCTION(
262 "436634 TransportConnectJob::DoTransportConnect"));
263
249 base::TimeTicks now = base::TimeTicks::Now(); 264 base::TimeTicks now = base::TimeTicks::Now();
250 base::TimeTicks last_connect_time; 265 base::TimeTicks last_connect_time;
251 { 266 {
252 base::AutoLock lock(g_last_connect_time_lock.Get()); 267 base::AutoLock lock(g_last_connect_time_lock.Get());
253 last_connect_time = g_last_connect_time.Get(); 268 last_connect_time = g_last_connect_time.Get();
254 *g_last_connect_time.Pointer() = now; 269 *g_last_connect_time.Pointer() = now;
255 } 270 }
256 if (last_connect_time.is_null()) { 271 if (last_connect_time.is_null()) {
257 interval_between_connects_ = CONNECT_INTERVAL_GT_20MS; 272 interval_between_connects_ = CONNECT_INTERVAL_GT_20MS;
258 } else { 273 } else {
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 FROM_HERE, 308 FROM_HERE,
294 base::TimeDelta::FromMilliseconds( 309 base::TimeDelta::FromMilliseconds(
295 TransportConnectJobHelper::kIPv6FallbackTimerInMs), 310 TransportConnectJobHelper::kIPv6FallbackTimerInMs),
296 this, 311 this,
297 &TransportConnectJob::DoIPv6FallbackTransportConnect); 312 &TransportConnectJob::DoIPv6FallbackTransportConnect);
298 } 313 }
299 return rv; 314 return rv;
300 } 315 }
301 316
302 int TransportConnectJob::DoTransportConnectComplete(int result) { 317 int TransportConnectJob::DoTransportConnectComplete(int result) {
318 // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
319 tracked_objects::ScopedTracker tracking_profile(
320 FROM_HERE_WITH_EXPLICIT_FUNCTION(
321 "436634 TransportConnectJob::DoTransportConnectComplete"));
322
303 if (result == OK) { 323 if (result == OK) {
304 bool is_ipv4 = 324 bool is_ipv4 =
305 helper_.addresses().front().GetFamily() == ADDRESS_FAMILY_IPV4; 325 helper_.addresses().front().GetFamily() == ADDRESS_FAMILY_IPV4;
306 TransportConnectJobHelper::ConnectionLatencyHistogram race_result = 326 TransportConnectJobHelper::ConnectionLatencyHistogram race_result =
307 TransportConnectJobHelper::CONNECTION_LATENCY_UNKNOWN; 327 TransportConnectJobHelper::CONNECTION_LATENCY_UNKNOWN;
308 if (is_ipv4) { 328 if (is_ipv4) {
309 race_result = TransportConnectJobHelper::CONNECTION_LATENCY_IPV4_NO_RACE; 329 race_result = TransportConnectJobHelper::CONNECTION_LATENCY_IPV4_NO_RACE;
310 } else { 330 } else {
311 if (AddressListOnlyContainsIPv6(helper_.addresses())) { 331 if (AddressListOnlyContainsIPv6(helper_.addresses())) {
312 race_result = TransportConnectJobHelper::CONNECTION_LATENCY_IPV6_SOLO; 332 race_result = TransportConnectJobHelper::CONNECTION_LATENCY_IPV6_SOLO;
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
559 HigherLayeredPool* higher_pool) { 579 HigherLayeredPool* higher_pool) {
560 base_.AddHigherLayeredPool(higher_pool); 580 base_.AddHigherLayeredPool(higher_pool);
561 } 581 }
562 582
563 void TransportClientSocketPool::RemoveHigherLayeredPool( 583 void TransportClientSocketPool::RemoveHigherLayeredPool(
564 HigherLayeredPool* higher_pool) { 584 HigherLayeredPool* higher_pool) {
565 base_.RemoveHigherLayeredPool(higher_pool); 585 base_.RemoveHigherLayeredPool(higher_pool);
566 } 586 }
567 587
568 } // namespace net 588 } // namespace net
OLDNEW
« no previous file with comments | « net/socket/ssl_session_cache_openssl.cc ('k') | net/tools/quic/end_to_end_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698