Files
CHOMPStation2/code/__defines/process_scheduler.dm
PsiOmegaDelta d2b4db716d Ports Paradise's 510 scheduler.
Conflicts:
	code/__defines/btime.dm
	code/__defines/process_scheduler.dm
	code/_helpers/time.dm
	code/controllers/ProcessScheduler/core/_stubs.dm
	code/controllers/ProcessScheduler/core/processScheduler.dm
	polaris.dme
2016-07-27 17:20:37 -04:00

20 lines
779 B
Plaintext

// Process status defines
#define PROCESS_STATUS_IDLE 1
#define PROCESS_STATUS_QUEUED 2
#define PROCESS_STATUS_RUNNING 3
#define PROCESS_STATUS_MAYBE_HUNG 4
#define PROCESS_STATUS_PROBABLY_HUNG 5
#define PROCESS_STATUS_HUNG 6
// Process time thresholds
#define PROCESS_DEFAULT_HANG_WARNING_TIME 300 // 30 seconds
#define PROCESS_DEFAULT_HANG_ALERT_TIME 600 // 60 seconds
#define PROCESS_DEFAULT_HANG_RESTART_TIME 900 // 90 seconds
#define PROCESS_DEFAULT_SCHEDULE_INTERVAL 50 // 50 ticks
#define PROCESS_DEFAULT_SLEEP_INTERVAL 8 // 1/8th of a tick
// SCHECK macros
// This references src directly to work around a weird bug with try/catch
#define SCHECK_EVERY(this_many_calls) if(++src.calls_since_last_scheck >= this_many_calls) sleepCheck()
#define SCHECK sleepCheck()