MemoryMonitor.st
changeset 1206 e3894601c394
parent 1205 0b60eda64a3b
child 1261 f59a1039ae3c
--- a/MemoryMonitor.st	Thu Jun 26 17:13:13 1997 +0200
+++ b/MemoryMonitor.st	Fri Jun 27 14:45:44 1997 +0200
@@ -556,7 +556,7 @@
 !
 
 memoryMenu
-    |m specialMenu labels selectors|
+    |m specialMenu labels selectors shorties|
 
     labels :=    #(
                     'scavenge'
@@ -565,6 +565,7 @@
                     '-'
                     'cleanup memory'
                     'flush method history'
+                    'unload autoloaded classes'
                     '-'
                     'compress sources'
                   ).
@@ -575,6 +576,7 @@
                     nil
                     cleanupMemory
                     cleanupMethodHistory
+                    unloadAllAutoloadedClasses
                     nil
                     compressSources
                   ).
@@ -638,13 +640,27 @@
                         otherMenu
                       ).
     ].
+
+    shorties := #(
+                    nil
+                    nil
+                    nil
+                    nil
+                    nil
+                    nil
+                    nil
+                    nil
+                    #'Ctrl'
+                 ).
+
     m := PopUpMenu labels:(resources array:labels)
-                   selectors:selectors.
+                   selectors:selectors
+                   accelerators:shorties.
 
     m subMenuAt:#otherMenu put:specialMenu.
     ^ m
 
-    "Modified: 21.1.1997 / 00:20:27 / cg"
+    "Modified: 27.6.1997 / 14:45:06 / cg"
 !
 
 realize
@@ -848,10 +864,23 @@
      (this is for debugging only - the system does this automatically)"
 
     ObjectMemory tenure
+!
+
+unloadAllAutoloadedClasses
+    "unload all classes which were autoloaded and have no instances"
+
+    Autoload loadedClasses copy do:[:anAutoloadedClass |
+        anAutoloadedClass hasInstances ifFalse:[
+            anAutoloadedClass unload
+        ]
+    ].
+
+    "Created: 27.6.1997 / 14:21:45 / cg"
+    "Modified: 27.6.1997 / 14:22:47 / cg"
 ! !
 
 !MemoryMonitor class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/MemoryMonitor.st,v 1.46 1997-06-26 15:13:13 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/MemoryMonitor.st,v 1.47 1997-06-27 12:45:44 cg Exp $'
 ! !