Bug 797671: Import Webrtc.org code from stable branch 3.12 (rev 2820) rs=jesup
[gecko.git] / media / webrtc / trunk / src / system_wrappers / source / sleep.cc
blobbe8523857c762268c50423f1fbe265b0cba5f649
1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10 // An OS-independent sleep function.
12 #include "system_wrappers/interface/sleep.h"
14 #ifdef _WIN32
15 // For Sleep()
16 #include <windows.h>
17 #else
18 // For nanosleep()
19 #include <time.h>
20 #endif
22 namespace webrtc {
24 void SleepMs(int msecs) {
25 #ifdef _WIN32
26 Sleep(msecs);
27 #else
28 struct timespec short_wait;
29 struct timespec remainder;
30 short_wait.tv_sec = msecs / 1000;
31 short_wait.tv_nsec = (msecs % 1000) * 1000 * 1000;
32 nanosleep(&short_wait, &remainder);
33 #endif
36 } // namespace webrtc