blob: 5d89c0e51b118cab04c2dbe8b90ce9838d14808e [file] [log] [blame]
Nick Lewycky4e06def2013-03-26 01:27:52 +00001//===--- Unix/Watchdog.inc - Unix Watchdog Implementation -------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file provides the generic Unix implementation of the Watchdog class.
11//
12//===----------------------------------------------------------------------===//
13
14#ifdef HAVE_UNISTD_H
15#include <unistd.h>
16#endif
17
18namespace llvm {
19 namespace sys {
20 Watchdog::Watchdog(unsigned int seconds) {
21#ifdef HAVE_UNISTD_H
22 alarm(seconds);
23#endif
24 }
25
26 Watchdog::~Watchdog() {
27#ifdef HAVE_UNISTD_H
28 alarm(0);
29#endif
30 }
Alexander Kornienkof00654e2015-06-23 09:49:53 +000031 }
32}