Message260234
Ok, this is because internally, sys.setprofile (or to be exact, PyEval_SetProfile) sets two things: a C function, and a "profileobj", which is the argument to setprofile().
sys.setprofile sets the C function to the "profile_trampoline", which supports calling Python profile functions. The profileobj is the Python profile function.
The C profiler sets the C function to a different callback, and uses the profileobj for storing the reference to the Profiler object.
sys.getprofile just returns the profileobj, which means that you can't save/restore the profiler state with the two functions when using cProfile.
There is not much we can do here except for explicitly documenting this. |
|
Date |
User |
Action |
Args |
2016-02-13 11:58:36 | georg.brandl | set | recipients:
+ georg.brandl, stefan, docs@python |
2016-02-13 11:58:36 | georg.brandl | set | messageid: <1455364716.81.0.100558622619.issue25726@psf.upfronthosting.co.za> |
2016-02-13 11:58:36 | georg.brandl | link | issue25726 messages |
2016-02-13 11:58:36 | georg.brandl | create | |
|