|
@@ -3,6 +3,9 @@
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
|
|
#include "testing_clock.h"
|
|
|
+#ifdef UA_ENABLE_MULTITHREADING
|
|
|
+#include <time.h>
|
|
|
+#endif
|
|
|
|
|
|
UA_DateTime testingClock = 0;
|
|
|
|
|
@@ -18,3 +21,14 @@ void
|
|
|
UA_sleep(UA_UInt32 duration) {
|
|
|
testingClock += duration * UA_MSEC_TO_DATETIME;
|
|
|
}
|
|
|
+
|
|
|
+#define NANO_SECOND_MULTIPLIER 1000000 // 1 millisecond = 1,000,000 Nanoseconds
|
|
|
+void
|
|
|
+UA_realsleep(UA_UInt32 duration) {
|
|
|
+#ifdef UA_ENABLE_MULTITHREADING
|
|
|
+ struct timespec sleepValue;
|
|
|
+ sleepValue.tv_sec = 0;
|
|
|
+ sleepValue.tv_nsec = duration * NANO_SECOND_MULTIPLIER;
|
|
|
+ nanosleep(&sleepValue, NULL);
|
|
|
+#endif
|
|
|
+}
|