Index: net/udp/udp_socket_win.cc |
diff --git a/net/udp/udp_socket_win.cc b/net/udp/udp_socket_win.cc |
index 662ca4cd4ee98d738b6aa724fba9a48c7fd55300..71caf174f888e4fda6a4a9bd116b532a4487391f 100644 |
--- a/net/udp/udp_socket_win.cc |
+++ b/net/udp/udp_socket_win.cc |
@@ -9,6 +9,7 @@ |
#include "base/callback.h" |
#include "base/logging.h" |
#include "base/message_loop.h" |
+#include "base/metrics/histogram.h" |
#include "base/metrics/stats_counters.h" |
#include "base/posix/eintr_wrapper.h" |
#include "base/rand_util.h" |
@@ -190,7 +191,10 @@ void UDPSocketWin::Close() { |
recv_from_address_ = NULL; |
write_callback_.Reset(); |
+ base::TimeTicks start_time = base::TimeTicks::Now(); |
closesocket(socket_); |
+ UMA_HISTOGRAM_TIMES("Net.UDPSocketWinClose", |
+ base::TimeTicks::Now() - start_time); |
socket_ = INVALID_SOCKET; |
core_->Detach(); |