[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
find those leaks with logzone
From: |
Ralf Stephan |
Subject: |
find those leaks with logzone |
Date: |
Fri, 19 May 2000 17:35:09 +0200 |
Not fully finished (R) but supposedly useful so here it is:
ftp://ftp.swarm.org/pub/swarm/src/users-contrib/anarchy/logzone-0.5.tar.gz
Language: Objective-C
Description: logzone is a set of classes to facilitate monitoring of
Zones in Swarm. It is possible to direct information about allocated
objects into streams/files, or have it in a simple, table-style monitor
window while the simulation is running.
Tested with aquarium-0.03. To build liblogzone.a, extract source and
make. To use it, put liblogzone.a into your Makefile APPLIBS variable.
========Class hierarchy ======================
LoggingZone - replacement for Zone
<MemLogConsumer> - protocol
+---ASCIIMemLogger - text output
+---KISSMemLogger - tabular output into a GUI window
+---RMemLogger - (TODO) output capable as R input
INTERNAL:
(MemLogClassData) - helper
(QSort) - enhanced (Swarm)-QSort
(TextItem) - specialized (Swarm)-TextItem
========Usages: ==============================
(0) default: sorted cumulative info in a graphics window
...
initSwarm (argc, argv);
logzone = [LoggingZone create: globalZone];
observerSwarm = [AquariumObserverSwarm create: logzone];
...
(1) send alloc info (non-cumulative) to a file/stdout
...
initSwarm (argc, argv);
logzone = [LoggingZone createBegin: globalZone];
[logzone setAsciiFilename: 0]; // to stdout
logzone = [logzone createEnd];
observerSwarm = [AquariumObserverSwarm create: logzone];
...
(2) set a refined logger, e.g. log cumulative info separated by commata
to a file (make cum. the default for ascii?)
logzone = [LoggingZone createBegin: globalZone];
logger = [AsciiMemLogger createBegin: globalZone];
[logger setCumulative];
[logger setFilename: "testlog"];
[logger setRecordDelim: "\n" dataDelim: ","];
logger = [logger createEnd];
[logzone setMemLogConsumer: logger];
logzone = [logzone createEnd];
(3) log scratchZone/globalZone by replacing it with a LoggingZone
logzone = [LoggingZone createBegin: globalZone];
[logzone setAsciiFilename: 0]; // to stdout
scratchZone = [logzone createEnd];
(4) TODO: log in R format
(5) TODO: log in other formats (contributions!) or more graphically
sophisticated
Please send bug reports and patches to:
address@hidden
--
http://ME.IN-berlin.de/~rws/
==================================
Swarm-Support is for discussion of the technical details of the day
to day usage of Swarm. For list administration needs (esp.
[un]subscribing), please send a message to <address@hidden>
with "help" in the body of the message.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- find those leaks with logzone,
Ralf Stephan <=