DescriptionRTCStatsCollector collecting stats on multiple threads.
Changes GetStatsReport to a callback-based function. Stats collection
is dispatched to three different stats collecting methods, being
invoked asynchronously on the signaling, worker and network threads.
The three resulting stats reports are merged into one before returned.
The only current stats being collected is on the signaling thread, but
a FakeRTCStatsCollector is able to test the multi-threaded and
stats-merging behaviors. Future CLs simply have to put their stats
collecting code in the appropriate ProducePartialResultsOnFooThread
method.
BUG=chromium:627816
Committed: https://crrev.com/c82f2e1613e394f92c56d14c38b3f9069075039e
Cr-Commit-Position: refs/heads/master@{#14064}
Patch Set 1 #Patch Set 2 : (nits, no need to rerun bots yet) #
Total comments: 14
Patch Set 3 : Use of GUARDED_BY to document variables used on multiple threads needing lock_ #Patch Set 4 : Rebase with master, adjusting timestamps to int64_t microseconds #Patch Set 5 : Addressed comments #Patch Set 6 : Corrected a comment, not re-running bots yet #Patch Set 7 : No lock_, all member variables touched only on signaling thread #Patch Set 8 : partial_report_timestamp_us_ var instead of passing it (cache_timestamp_us) as an argument #
Total comments: 4
Patch Set 9 : Addressed comments #
Messages
Total messages: 20 (10 generated)
|