forked from LeenkxTeam/LNXSDK
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
package eval.luv;
 | 
						|
 | 
						|
import eval.integers.UInt64;
 | 
						|
import eval.integers.Int64;
 | 
						|
 | 
						|
typedef RUsage = {
 | 
						|
	var utime:{sec:Int64, usec:Int64};
 | 
						|
	var stime:{sec:Int64, usec:Int64};
 | 
						|
	var maxrss:UInt64;
 | 
						|
	var ixrss:UInt64;
 | 
						|
	var idrss:UInt64;
 | 
						|
	var isrss:UInt64;
 | 
						|
	var minflt:UInt64;
 | 
						|
	var majflt:UInt64;
 | 
						|
	var nswap:UInt64;
 | 
						|
	var inblock:UInt64;
 | 
						|
	var oublock:UInt64;
 | 
						|
	var msgsnd:UInt64;
 | 
						|
	var msgrcv:UInt64;
 | 
						|
	var nsignals:UInt64;
 | 
						|
	var nvcsw:UInt64;
 | 
						|
	var nivcsw:UInt64;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
	Resource usage.
 | 
						|
 | 
						|
	@see https://aantron.github.io/luv/luv/Luv/Resource
 | 
						|
**/
 | 
						|
extern class Resource {
 | 
						|
	/**
 | 
						|
		Evaluates to the current uptime.
 | 
						|
	**/
 | 
						|
	static function uptime():Result<Float>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Evaluates to the load average.
 | 
						|
	**/
 | 
						|
	static function loadAvg():Array<Float>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Evaluates to the amount of free memory, in bytes.
 | 
						|
	**/
 | 
						|
	static function freeMemory():UInt64;
 | 
						|
 | 
						|
	/**
 | 
						|
		Evaluates to the total amount of memory, in bytes.
 | 
						|
	**/
 | 
						|
	static function totalMemory():UInt64;
 | 
						|
 | 
						|
	/**
 | 
						|
		Gets the amount of memory available to the process (in bytes) based on
 | 
						|
		limits imposed by the OS.
 | 
						|
		If there is no such constraint returns `null`
 | 
						|
	**/
 | 
						|
	static function constrainedMemory():Null<UInt64>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Evaluates to the priority of the process with the given pid.
 | 
						|
	**/
 | 
						|
	static function getPriority(pid:Int):Result<Int>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Sets the priority of the process with the given pid.
 | 
						|
	**/
 | 
						|
	static function setPriority(pid:Int, priority:Int):Result<Result.NoData>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Evaluates to the resident set size for the current process.
 | 
						|
	**/
 | 
						|
	static function residentSetMemory(pid:Int):Result<UInt64>;
 | 
						|
 | 
						|
	/**
 | 
						|
		Gets the resource usage measures for the current process.
 | 
						|
	**/
 | 
						|
	static function getRUsage():Result<RUsage>;
 | 
						|
 | 
						|
} |