github.com/criyle/go-sandbox@v0.10.3/runner/doc.go (about)

     1  // Package runner provides common interface for program runner together with
     2  // common types including Result, Limit, Size and Status.
     3  //
     4  // # Status
     5  //
     6  // Status defines the program running result status including
     7  //
     8  //	Normal
     9  //	Program Error
    10  //	    Resource Limit Exceeded (Time / Memory / Output)
    11  //	    Unauthorized Access (Disallowed Syscall)
    12  //	    Runtime Error (Signaled / Nonzero Exit Status)
    13  //	Program Runner Error
    14  //
    15  // # Size
    16  //
    17  // Size defines size in bytes, underlying type is uint64 so it
    18  // is effective to store up to EiB of size
    19  //
    20  // # Limit
    21  //
    22  // Limit defines Time & Memory restriction on program runner
    23  //
    24  // # Result
    25  //
    26  // Result defines program running result including
    27  // Status, ExitStatus, Detailed Error, Time, Memory,
    28  // SetupTime and RunningTime (in real clock)
    29  //
    30  // # Runner
    31  //
    32  // General interface to run a program, including a context
    33  // for cancellation
    34  package runner