From ba041f45fe42be353f62e44b7f29b6a7eee6bc51 Mon Sep 17 00:00:00 2001 From: Mikhail Glushenkov Date: Sun, 8 Feb 2009 22:47:39 +0000 Subject: [PATCH] Add a Sleep() function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64101 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/System/Alarm.h | 15 ++++++++++----- lib/System/Unix/Alarm.inc | 4 ++++ lib/System/Win32/Alarm.inc | 4 ++++ 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/include/llvm/System/Alarm.h b/include/llvm/System/Alarm.h index 718ab8f3bb1..9535d23f812 100644 --- a/include/llvm/System/Alarm.h +++ b/include/llvm/System/Alarm.h @@ -7,8 +7,8 @@ // //===----------------------------------------------------------------------===// // -// This file provides an operating system independent interface to alarm(2) -// type functionality. The Alarm class allows a one-shot alarm to be set up +// This file provides an operating system independent interface to alarm(2) +// type functionality. The Alarm class allows a one-shot alarm to be set up // at some number of seconds in the future. When the alarm triggers, a method // is called to process the event // @@ -20,7 +20,7 @@ namespace llvm { namespace sys { - /// This function registers an alarm to trigger some number of \p seconds in + /// This function registers an alarm to trigger some number of \p seconds in /// the future. When that time arrives, the AlarmStatus function will begin /// to return 1 instead of 0. The user must poll the status of the alarm by /// making occasional calls to AlarmStatus. If the user sends an interrupt @@ -31,14 +31,19 @@ namespace sys { unsigned seconds ///< Number of seconds in future when alarm arrives ); - /// This function terminates the alarm previously set up + /// This function terminates the alarm previously set up /// @returns nothing void TerminateAlarm(); - /// This function acquires the status of the alarm. + /// This function acquires the status of the alarm. /// @returns -1=cancelled, 0=untriggered, 1=triggered int AlarmStatus(); + /// Sleep for n seconds. + /// @returns nothing. + void Sleep(unsigned n); + + } // End sys namespace } // End llvm namespace diff --git a/lib/System/Unix/Alarm.inc b/lib/System/Unix/Alarm.inc index 7faa6afa9ad..28ff1b8a636 100644 --- a/lib/System/Unix/Alarm.inc +++ b/lib/System/Unix/Alarm.inc @@ -66,3 +66,7 @@ int sys::AlarmStatus() { return 1; return 0; } + +void Sleep(unsigned n) { + ::sleep(n); +} diff --git a/lib/System/Win32/Alarm.inc b/lib/System/Win32/Alarm.inc index 2f1a2808f98..64a2107a8e7 100644 --- a/lib/System/Win32/Alarm.inc +++ b/lib/System/Win32/Alarm.inc @@ -34,3 +34,7 @@ int sys::AlarmStatus() { // FIXME: Implement for Win32 return 0; } + +void Sleep(unsigned n) { + Sleep(n*1000); +}