OLD | NEW |
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/client_socket_pool_base.h" | 5 #include "net/socket/client_socket_pool_base.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
714 return dict; | 714 return dict; |
715 } | 715 } |
716 | 716 |
717 void ClientSocketPoolBaseHelper::DumpMemoryStats( | 717 void ClientSocketPoolBaseHelper::DumpMemoryStats( |
718 base::trace_event::ProcessMemoryDump* pmd, | 718 base::trace_event::ProcessMemoryDump* pmd, |
719 const std::string& parent_dump_absolute_name) const { | 719 const std::string& parent_dump_absolute_name) const { |
720 size_t socket_count = 0; | 720 size_t socket_count = 0; |
721 size_t total_size = 0; | 721 size_t total_size = 0; |
722 size_t buffer_size = 0; | 722 size_t buffer_size = 0; |
723 size_t cert_count = 0; | 723 size_t cert_count = 0; |
724 size_t serialized_cert_size = 0; | 724 size_t cert_size = 0; |
725 for (const auto& kv : group_map_) { | 725 for (const auto& kv : group_map_) { |
726 for (const auto& socket : kv.second->idle_sockets()) { | 726 for (const auto& socket : kv.second->idle_sockets()) { |
727 StreamSocket::SocketMemoryStats stats; | 727 StreamSocket::SocketMemoryStats stats; |
728 socket.socket->DumpMemoryStats(&stats); | 728 socket.socket->DumpMemoryStats(&stats); |
729 total_size += stats.total_size; | 729 total_size += stats.total_size; |
730 buffer_size += stats.buffer_size; | 730 buffer_size += stats.buffer_size; |
731 cert_count += stats.cert_count; | 731 cert_count += stats.cert_count; |
732 serialized_cert_size += stats.serialized_cert_size; | 732 cert_size += stats.cert_size; |
733 ++socket_count; | 733 ++socket_count; |
734 } | 734 } |
735 } | 735 } |
736 // Only create a MemoryAllocatorDump if there is at least one idle socket | 736 // Only create a MemoryAllocatorDump if there is at least one idle socket |
737 if (socket_count > 0) { | 737 if (socket_count > 0) { |
738 base::trace_event::MemoryAllocatorDump* socket_pool_dump = | 738 base::trace_event::MemoryAllocatorDump* socket_pool_dump = |
739 pmd->CreateAllocatorDump(base::StringPrintf( | 739 pmd->CreateAllocatorDump(base::StringPrintf( |
740 "%s/socket_pool", parent_dump_absolute_name.c_str())); | 740 "%s/socket_pool", parent_dump_absolute_name.c_str())); |
741 socket_pool_dump->AddScalar( | 741 socket_pool_dump->AddScalar( |
742 base::trace_event::MemoryAllocatorDump::kNameSize, | 742 base::trace_event::MemoryAllocatorDump::kNameSize, |
743 base::trace_event::MemoryAllocatorDump::kUnitsBytes, total_size); | 743 base::trace_event::MemoryAllocatorDump::kUnitsBytes, total_size); |
744 socket_pool_dump->AddScalar( | 744 socket_pool_dump->AddScalar( |
745 base::trace_event::MemoryAllocatorDump::kNameObjectCount, | 745 base::trace_event::MemoryAllocatorDump::kNameObjectCount, |
746 base::trace_event::MemoryAllocatorDump::kUnitsObjects, socket_count); | 746 base::trace_event::MemoryAllocatorDump::kUnitsObjects, socket_count); |
747 socket_pool_dump->AddScalar( | 747 socket_pool_dump->AddScalar( |
748 "buffer_size", base::trace_event::MemoryAllocatorDump::kUnitsBytes, | 748 "buffer_size", base::trace_event::MemoryAllocatorDump::kUnitsBytes, |
749 buffer_size); | 749 buffer_size); |
750 socket_pool_dump->AddScalar( | 750 socket_pool_dump->AddScalar( |
751 "cert_count", base::trace_event::MemoryAllocatorDump::kUnitsObjects, | 751 "cert_count", base::trace_event::MemoryAllocatorDump::kUnitsObjects, |
752 cert_count); | 752 cert_count); |
753 socket_pool_dump->AddScalar( | 753 socket_pool_dump->AddScalar( |
754 "serialized_cert_size", | 754 "cert_size", base::trace_event::MemoryAllocatorDump::kUnitsBytes, |
755 base::trace_event::MemoryAllocatorDump::kUnitsBytes, | 755 cert_size); |
756 serialized_cert_size); | |
757 } | 756 } |
758 } | 757 } |
759 | 758 |
760 bool ClientSocketPoolBaseHelper::IdleSocket::IsUsable() const { | 759 bool ClientSocketPoolBaseHelper::IdleSocket::IsUsable() const { |
761 if (socket->WasEverUsed()) | 760 if (socket->WasEverUsed()) |
762 return socket->IsConnectedAndIdle(); | 761 return socket->IsConnectedAndIdle(); |
763 return socket->IsConnected(); | 762 return socket->IsConnected(); |
764 } | 763 } |
765 | 764 |
766 void ClientSocketPoolBaseHelper::CleanupIdleSockets(bool force) { | 765 void ClientSocketPoolBaseHelper::CleanupIdleSockets(bool force) { |
(...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1469 // If there are no more requests, kill the backup timer. | 1468 // If there are no more requests, kill the backup timer. |
1470 if (pending_requests_.empty()) | 1469 if (pending_requests_.empty()) |
1471 backup_job_timer_.Stop(); | 1470 backup_job_timer_.Stop(); |
1472 request->CrashIfInvalid(); | 1471 request->CrashIfInvalid(); |
1473 return request; | 1472 return request; |
1474 } | 1473 } |
1475 | 1474 |
1476 } // namespace internal | 1475 } // namespace internal |
1477 | 1476 |
1478 } // namespace net | 1477 } // namespace net |
OLD | NEW |