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>; | ||
|  | 
 | ||
|  | } |