Skip to content
Snippets Groups Projects
Select Git revision
  • 8a6142ca1e0a9c1afa3021569bb91c5ed93b2aad
  • master default protected
  • fix_Makefile.mingw#2
  • update_Makefile.mingw
  • fix_Makefile.mingw
  • fix_API_for_C_apps
  • fix_procinfo_mac
  • boinccmd_gpu_mode_always_until_sigterm
  • fgrp_osx_hotfix
  • fix_boinc_master@f8250782
  • eah_wrapper_improvements
  • diagnostics_win-hotfix
  • diagnostics_win-hotfix-old
  • current_fgrp_apps
  • testing_gw_apps
  • gw_app_darwin_15
  • current_brp_apps
  • current_brp_apps_android10
  • current_gfx_apps
  • current_server
  • current_gw_apps
  • previous_fgrp_apps
  • previous_gw_apps
  • testing_brp_apps
  • apps_FGRP3_1.07
  • apps_FGRP3_1.08
26 results

boinc_api.h

Blame
    • David Anderson's avatar
      d5a8f6f1
      - API: add boinc_init_parallel(). · d5a8f6f1
      David Anderson authored
          This is like boinc_init() but for multithread apps.
          Unlike boinc_init(), it suspends/resumes all threads in the app,
          not just one.
          In Unix, this is done by forking,
          and having the parent process handle suspend/resume messages
          and suspend/resume the child using signals
          On Win, there's some nasty code that enumerates all
          threads in the whole system, and suspends/resumes
          those in a particular process.
      
      
      svn path=/trunk/boinc/; revision=20054
      d5a8f6f1
      History
      - API: add boinc_init_parallel().
      David Anderson authored
          This is like boinc_init() but for multithread apps.
          Unlike boinc_init(), it suspends/resumes all threads in the app,
          not just one.
          In Unix, this is done by forking,
          and having the parent process handle suspend/resume messages
          and suspend/resume the child using signals
          On Win, there's some nasty code that enumerates all
          threads in the whole system, and suspends/resumes
          those in a particular process.
      
      
      svn path=/trunk/boinc/; revision=20054
    vbox.cpp 88.37 KiB
    // This file is part of BOINC.
    // http://boinc.berkeley.edu
    // Copyright (C) 2010-2012 University of California
    //
    // BOINC 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 3 of the License, or (at your option) any later version.
    //
    // BOINC 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.
    //
    // You should have received a copy of the GNU Lesser General Public License
    // along with BOINC.  If not, see <http://www.gnu.org/licenses/>.
    
    #ifdef _WIN32
    #include "boinc_win.h"
    #include "win_util.h"
    #else
    #include <sys/wait.h>
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <sys/socket.h>
    #include <sys/time.h>
    #include <sys/resource.h>
    #include <netinet/in.h>
    #include <arpa/inet.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <vector>
    #include <string>
    #include <fstream>
    #include <sstream>
    #include <stdexcept>
    #include <unistd.h>
    #endif
    
    using std::string;
    
    #if defined(_MSC_VER)
    #define getcwd      _getcwd
    #define stricmp     _stricmp
    #endif
    
    #include "diagnostics.h"
    #include "filesys.h"
    #include "parse.h"
    #include "str_util.h"
    #include "str_replace.h"
    #include "util.h"
    #include "error_numbers.h"
    #include "procinfo.h"
    #include "network.h"
    #include "boinc_api.h"
    #include "floppyio.h"
    #include "vboxwrapper.h"
    #include "vbox.h"
    
    //#define NEW_EXECUTION_PATH 1
    
    VBOX_VM::VBOX_VM() {
        virtualbox_home_directory.clear();
        virtualbox_install_directory.clear();
        virtualbox_version.clear();
        pFloppy = NULL;
        vm_log.clear();
        vm_log_timestamp.hours = 0;
        vm_log_timestamp.minutes = 0;