36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Factor
		
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Factor
		
	
	
| 
								 | 
							
								USING: help.markup help.syntax memory sequences ;
							 | 
						||
| 
								 | 
							
								IN: tools.memory
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ARTICLE: "tools.memory" "Object memory tools"
							 | 
						||
| 
								 | 
							
								"You can print object heap status information:"
							 | 
						||
| 
								 | 
							
								{ $subsection room. }
							 | 
						||
| 
								 | 
							
								{ $subsection heap-stats. }
							 | 
						||
| 
								 | 
							
								{ $subsection heap-stats }
							 | 
						||
| 
								 | 
							
								"You can query memory status:"
							 | 
						||
| 
								 | 
							
								{ $subsection data-room }
							 | 
						||
| 
								 | 
							
								{ $subsection code-room }
							 | 
						||
| 
								 | 
							
								"There are a pair of combinators, analogous to " { $link each } " and " { $link filter } ", which operate on the entire collection of objects in the object heap:"
							 | 
						||
| 
								 | 
							
								{ $subsection each-object }
							 | 
						||
| 
								 | 
							
								{ $subsection instances }
							 | 
						||
| 
								 | 
							
								"You can check an object's the heap memory usage:"
							 | 
						||
| 
								 | 
							
								{ $subsection size }
							 | 
						||
| 
								 | 
							
								"The garbage collector can be invoked manually:"
							 | 
						||
| 
								 | 
							
								{ $subsection gc }
							 | 
						||
| 
								 | 
							
								{ $see-also "images" } ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ABOUT: "tools.memory"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								HELP: room.
							 | 
						||
| 
								 | 
							
								{ $description "Prints an overview of memory usage broken down by generation and zone." } ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{ data-room code-room room. } related-words
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								HELP: heap-stats
							 | 
						||
| 
								 | 
							
								{ $values { "counts" "an assoc mapping class words to integers" } { "sizes" "an assoc mapping class words to integers" } }
							 | 
						||
| 
								 | 
							
								{ $description "Outputs a pair of assocs holding class instance counts and instance memory usage, respectively." } ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								HELP: heap-stats.
							 | 
						||
| 
								 | 
							
								{ $description "For each class, prints the number of instances and total memory consumed by those instances." } ;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{ heap-stats heap-stats. } related-words
							 |