BatchTerminator is a lightweight C++ watchdog utility designed to monitor background mayaBatch.exe processes. It tracks active Maya batch execution sessions and automatically terminates frozen, crashed, or timed-out processes, preventing memory leaks and resource blocking on render farms or local workstations.
- 🔍 Automated Monitoring: Continuously scans the system for active Autodesk Maya Batch processes.
- ⏱️ Hang Detection: Identifies processes that have stopped responding, frozen, or entered infinite loops.
- 🔨 Forced Termination: Automatically kills problematic sessions to instantly free up Maya licenses, CPU, and GPU resources.
- ⚙️ Ultra-low Overhead: Written in native C++ to run efficiently in the background without affecting system performance.
├── .vs/ # Visual Studio project configuration
├── include/ # Header files (.h)
├── src/ # Source files (.cpp)
├── CMakeLists.txt # Core CMake build script
└── CMakeSettings.json # Visual Studio CMake configuration
To build this project, you need CMake and a C++ compiler compatible with your OS (e.g., MSVC for Windows, GCC/Clang for Linux).
- Clone the repository:
git clone https://github.com cd BatchTerminator - Create a build directory and compile:
mkdir build && cd build cmake .. cmake --build . --config Release
Open Visual Studio, choose File -> Open -> Folder, and select the root directory of the project. Visual Studio will automatically detect CMakeLists.txt and CMakeSettings.json. Choose the Release configuration and build.
Run the compiled binary executable in the background before initiating heavy Maya batch renders or automation tasks:
./BatchTerminator(Optional: If your tool supports command-line arguments like custom timeouts or specific target processes, you can list them here, e.g., ./BatchTerminator --timeout 1800 --process mayaBatch.exe)
[Specify your license here, e.g., MIT License / All rights reserved]