34 lines · plain
1//===--- Unix/Watchdog.inc - Unix Watchdog Implementation -------*- C++ -*-===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8//9// This file provides the generic Unix implementation of the Watchdog class.10//11//===----------------------------------------------------------------------===//12 13#include "llvm/Config/config.h"14 15#ifdef HAVE_UNISTD_H16#include <unistd.h>17#endif18 19namespace llvm {20namespace sys {21Watchdog::Watchdog(unsigned int seconds) {22#ifdef HAVE_UNISTD_H23 alarm(seconds);24#endif25}26 27Watchdog::~Watchdog() {28#ifdef HAVE_UNISTD_H29 alarm(0);30#endif31}32} // namespace sys33} // namespace llvm34