Adding more detail to MessageQueue::Dispatch logging.
Every message will now be traced with the location from which it was
posted, including function name, file and line number.
This CL also writes a normal LOG message when the dispatch took more
than a certain amount of time (currently 50ms).
This logging should help us identify messages that are taking
longer than expected to be dispatched.
R=pthatcher@webrtc.org, tommi@webrtc.org
Review URL: https://codereview.webrtc.org/2019423006 .
Cr-Commit-Position: refs/heads/master@{#13104}
diff --git a/webrtc/api/videocapturertracksource.cc b/webrtc/api/videocapturertracksource.cc
index b99a2d1..2321d83 100644
--- a/webrtc/api/videocapturertracksource.cc
+++ b/webrtc/api/videocapturertracksource.cc
@@ -352,8 +352,8 @@
format_ = GetBestCaptureFormat(formats);
// Start the camera with our best guess.
if (!worker_thread_->Invoke<bool>(
- rtc::Bind(&cricket::VideoCapturer::StartCapturing,
- video_capturer_.get(), format_))) {
+ RTC_FROM_HERE, rtc::Bind(&cricket::VideoCapturer::StartCapturing,
+ video_capturer_.get(), format_))) {
SetState(kEnded);
return;
}
@@ -372,6 +372,7 @@
}
started_ = false;
worker_thread_->Invoke<void>(
+ RTC_FROM_HERE,
rtc::Bind(&cricket::VideoCapturer::Stop, video_capturer_.get()));
}
@@ -380,8 +381,8 @@
return;
}
if (!worker_thread_->Invoke<bool>(
- rtc::Bind(&cricket::VideoCapturer::StartCapturing,
- video_capturer_.get(), format_))) {
+ RTC_FROM_HERE, rtc::Bind(&cricket::VideoCapturer::StartCapturing,
+ video_capturer_.get(), format_))) {
SetState(kEnded);
return;
}
@@ -394,8 +395,9 @@
cricket::CaptureState capture_state) {
if (rtc::Thread::Current() != signaling_thread_) {
invoker_.AsyncInvoke<void>(
- signaling_thread_, rtc::Bind(&VideoCapturerTrackSource::OnStateChange,
- this, capturer, capture_state));
+ RTC_FROM_HERE, signaling_thread_,
+ rtc::Bind(&VideoCapturerTrackSource::OnStateChange, this, capturer,
+ capture_state));
return;
}