go-sandbox/runner/doc.go
2024-02-03 16:19:58 +00:00

35 lines
906 B
Go

// Package runner provides common interface for program runner together with
// common types including Result, Limit, Size and Status.
//
// # Status
//
// Status defines the program running result status including
//
// Normal
// Program Error
// Resource Limit Exceeded (Time / Memory / Output)
// Unauthorized Access (Disallowed Syscall)
// Runtime Error (Signaled / Nonzero Exit Status)
// Program Runner Error
//
// # Size
//
// Size defines size in bytes, underlying type is uint64 so it
// is effective to store up to EiB of size
//
// # Limit
//
// Limit defines Time & Memory restriction on program runner
//
// # Result
//
// Result defines program running result including
// Status, ExitStatus, Detailed Error, Time, Memory,
// SetupTime and RunningTime (in real clock)
//
// # Runner
//
// General interface to run a program, including a context
// for cancellation
package runner