Skip to content
Snippets Groups Projects
Select Git revision
  • e9230ca04807b090f38cea8af5cf2f0d7e7def0c
  • master default
2 results

test_aperture.py

Blame
  • Forked from finesse / pykat
    Source project has a limited visibility.
    boinc_api.C 32.74 KiB
    // Berkeley Open Infrastructure for Network Computing
    // http://boinc.berkeley.edu
    // Copyright (C) 2005 University of California
    //
    // This is free software; you can redistribute it and/or
    // modify it under the terms of the GNU Lesser General Public
    // License as published by the Free Software Foundation;
    // either version 2.1 of the License, or (at your option) any later version.
    //
    // This software is distributed in the hope that it will be useful,
    // but WITHOUT ANY WARRANTY; without even the implied warranty of
    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    // See the GNU Lesser General Public License for more details.
    //
    // To view the GNU Lesser General Public License visit
    // http://www.gnu.org/copyleft/lesser.html
    // or write to the Free Software Foundation, Inc.,
    // 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
    
    #if defined(_WIN32) && !defined(__STDWX_H__) && !defined(_BOINC_WIN_) && !defined(_AFX_STDAFX_H_)
    #include "boinc_win.h"
    #endif
    
    #ifdef _WIN32
    #include "version.h"
    #else
    #include "config.h"
    #include <cstdlib>
    #include <cstring>
    #include <cstdio>
    #include <cstdarg>
    #include <sys/types.h>
    #include <errno.h>
    #include <unistd.h>
    #include <sys/time.h>
    #include <sys/resource.h>
    #include <pthread.h>
    #ifndef __EMX__
    #include <sched.h>
    #endif
    using namespace std;
    #endif
    
    #include "diagnostics.h"
    #include "parse.h"
    #include "shmem.h"
    #include "util.h"
    #include "str_util.h"
    #include "filesys.h"
    #include "mem_usage.h"
    #include "error_numbers.h"
    #include "common_defs.h"
    #include "app_ipc.h"
    
    #include "boinc_api.h"
    
    #ifdef __APPLE__
    #include "mac_backtrace.h"
    #define GETRUSAGE_IN_TIMER_THREAD
        // call getrusage() in the timer thread,
        // rather than in the worker thread's signal handler
        // (which can cause crashes on Mac)
        // If you want, you can set this for Linux too:
        // CPPFLAGS=-DGETRUSAGE_IN_TIMER_THREAD
    #endif
    
    // Implementation notes:
    // 1) Thread structure, Unix:
    //  getting CPU time and suspend/resume have to be done
    //  in the worker thread, so we use a SIGALRM signal handler.