1//===--- 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#include "llvm/Config/config.h" 15 16#ifdef HAVE_UNISTD_H 17#include <unistd.h> 18#endif 19 20namespace llvm { 21 namespace sys { 22 Watchdog::Watchdog(unsigned int seconds) { 23#ifdef HAVE_UNISTD_H 24 alarm(seconds); 25#endif 26 } 27 28 Watchdog::~Watchdog() { 29#ifdef HAVE_UNISTD_H 30 alarm(0); 31#endif 32 } 33 } 34} 35