[Python-Dev] PEP 454 (tracemalloc) disable ==> clear? (original) (raw)
Victor Stinner victor.stinner at gmail.com
Wed Oct 30 11:09:30 CET 2013
- Previous message: [Python-Dev] PEP 454 (tracemalloc) disable ==> clear?
- Next message: [Python-Dev] PEP 454 (tracemalloc) disable ==> clear?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
2013/10/30 Stephen J. Turnbull <stephen at xemacs.org>:
Just "reset" implies to me that you're ready to start over. Not just traced memory blocks but accumulated statistics and any configuration (such as Filters) would also be reset. Also tracing would be disabled until started explicitly.
If the name is really the problem, I propose the restore the previous name: clear_traces(). It's symmetric with get_traces(), like add_filter()/get_filters()/clear_filters().
Shouldn't disable() do this automatically, perhaps with an optional discardtraces flag (which would be False by default)?
The pattern is something like that:
enable() snapshot1 = take_snapshot() ... snapshot2 = take_snapshot() disable()
I don't see why disable() would return data.
But I definitely agree with Jim: You must provide an example here showing how to save the traces (even though it's trivial to do so), because that will make clear that disable() is a destructive operation. (It is not destructive in any other debugging tool that I've used.) Even with documentation, be prepared for user complaints.
I added "Call get_traces() or take_snapshot() function to get traces before clearing them." to the doc:
http://www.haypocalc.com/tmp/tracemalloc/library/tracemalloc.html#tracemalloc.disable
Victor
- Previous message: [Python-Dev] PEP 454 (tracemalloc) disable ==> clear?
- Next message: [Python-Dev] PEP 454 (tracemalloc) disable ==> clear?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]