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

Side by Side Diff: base/trace_event/trace_log.cc

Issue 2159323002: Add tracing AutoOpenCloseEvent. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: implement new design Created 4 years, 3 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "base/trace_event/trace_log.h" 5 #include "base/trace_event/trace_log.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 #include <memory> 9 #include <memory>
10 #include <utility> 10 #include <utility>
(...skipping 816 matching lines...) Expand 10 before | Expand all | Expand 10 after
827 827
828 if (!IsEnabled()) 828 if (!IsEnabled())
829 return; 829 return;
830 830
831 if (dispatching_to_observer_list_) { 831 if (dispatching_to_observer_list_) {
832 DLOG(ERROR) 832 DLOG(ERROR)
833 << "Cannot manipulate TraceLog::Enabled state from an observer."; 833 << "Cannot manipulate TraceLog::Enabled state from an observer.";
834 return; 834 return;
835 } 835 }
836 836
837 mode_ = DISABLED; 837 //mode_ = DISABLED;
838 838
839 if (sampling_thread_) { 839 if (sampling_thread_) {
840 // Stop the sampling thread. 840 // Stop the sampling thread.
841 sampling_thread_->Stop(); 841 sampling_thread_->Stop();
842 lock_.Release(); 842 lock_.Release();
843 PlatformThread::Join(sampling_thread_handle_); 843 PlatformThread::Join(sampling_thread_handle_);
844 lock_.Acquire(); 844 lock_.Acquire();
845 sampling_thread_handle_ = PlatformThreadHandle(); 845 sampling_thread_handle_ = PlatformThreadHandle();
846 sampling_thread_.reset(); 846 sampling_thread_.reset();
847 } 847 }
(...skipping 12 matching lines...) Expand all
860 enabled_state_observer_list_; 860 enabled_state_observer_list_;
861 std::map<AsyncEnabledStateObserver*, RegisteredAsyncObserver> observer_map = 861 std::map<AsyncEnabledStateObserver*, RegisteredAsyncObserver> observer_map =
862 async_observers_; 862 async_observers_;
863 863
864 { 864 {
865 // Dispatch to observers outside the lock in case the observer triggers a 865 // Dispatch to observers outside the lock in case the observer triggers a
866 // trace event. 866 // trace event.
867 AutoUnlock unlock(lock_); 867 AutoUnlock unlock(lock_);
868 for (EnabledStateObserver* observer : observer_list) 868 for (EnabledStateObserver* observer : observer_list)
869 observer->OnTraceLogDisabled(); 869 observer->OnTraceLogDisabled();
870 mode_ = DISABLED;
Primiano Tucci (use gerrit) 2016/09/14 09:38:54 ???
alexandermont 2016/09/14 20:14:57 Reverted this change. Originally this was there be
870 for (const auto& it : observer_map) { 871 for (const auto& it : observer_map) {
871 it.second.task_runner->PostTask( 872 it.second.task_runner->PostTask(
872 FROM_HERE, Bind(&AsyncEnabledStateObserver::OnTraceLogDisabled, 873 FROM_HERE, Bind(&AsyncEnabledStateObserver::OnTraceLogDisabled,
873 it.second.observer)); 874 it.second.observer));
874 } 875 }
875 } 876 }
876 dispatching_to_observer_list_ = false; 877 dispatching_to_observer_list_ = false;
877 } 878 }
878 879
879 int TraceLog::GetNumTracesRecorded() { 880 int TraceLog::GetNumTracesRecorded() {
(...skipping 1043 matching lines...) Expand 10 before | Expand all | Expand 10 after
1923 } 1924 }
1924 1925
1925 ScopedTraceBinaryEfficient::~ScopedTraceBinaryEfficient() { 1926 ScopedTraceBinaryEfficient::~ScopedTraceBinaryEfficient() {
1926 if (*category_group_enabled_) { 1927 if (*category_group_enabled_) {
1927 TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION(category_group_enabled_, name_, 1928 TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION(category_group_enabled_, name_,
1928 event_handle_); 1929 event_handle_);
1929 } 1930 }
1930 } 1931 }
1931 1932
1932 } // namespace trace_event_internal 1933 } // namespace trace_event_internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698