These tests were checking the behavior of thread synchronization primitives using nothing but carefully timed sleeps. This was very unreliable and prone to flakes. This CL replaces the sleeps with waiting on synchronization events. There is still the need to wait for timeouts when testing for negative outcomes, but it's greatly reduced. I've run these tests for thousands of iterations on MSan without a single failure. BUG=webrtc:5824 R=pthatcher@webrtc.org Review URL: https://codereview.webrtc.org/2393023002 . Cr-Commit-Position: refs/heads/master@{#14534}
Name: WebRTC URL: http://www.webrtc.org Version: 90 License: BSD License File: LICENSE Description: WebRTC provides real time voice and video processing functionality to enable the implementation of PeerConnection/MediaStream. Third party code used in this project is described in the file LICENSE_THIRD_PARTY.