blob: e2fa486118ab1cc6e9c93520eca5e7ddd17e6d84 [file] [log] [blame]
hta@webrtc.org41adcdb2012-06-18 11:24:57 +00001/*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
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.
11
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020012#include "system_wrappers/include/sleep.h"
hta@webrtc.org41adcdb2012-06-18 11:24:57 +000013
14#ifdef _WIN32
15// For Sleep()
16#include <windows.h>
17#else
18// For nanosleep()
19#include <time.h>
20#endif
21
22namespace webrtc {
23
24void 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
34}
35
36} // namespace webrtc