]> granicus.if.org Git - python/commitdiff
bpo-32532: Improve documentation of settrace and setprofile (#5359)
authorXiang Zhang <angwerzx@126.com>
Sat, 27 Jan 2018 15:04:47 +0000 (23:04 +0800)
committerGitHub <noreply@github.com>
Sat, 27 Jan 2018 15:04:47 +0000 (23:04 +0800)
Mention in the documentation of settrace and setprofile that errors in the
registered handlers will cause themselves unset.

Doc/library/sys.rst

index ab08f61f6c005f621d12572fff7c886cfa0b2c62..67925e426bb9b05b863ad1c86a0769adefa57170 100644 (file)
@@ -1089,7 +1089,8 @@ always available.
    but the return event is reported even when an exception has been set). The function is
    thread-specific, but there is no way for the profiler to know about context switches between
    threads, so it does not make sense to use this in the presence of multiple threads. Also,
-   its return value is not used, so it can simply return ``None``.
+   its return value is not used, so it can simply return ``None``.  Error in the profile
+   function will cause itself unset.
 
    Profile functions should have three arguments: *frame*, *event*, and
    *arg*. *frame* is the current stack frame.  *event* is a string: ``'call'``,
@@ -1173,6 +1174,9 @@ always available.
    function for further tracing in that scope), or ``None`` to turn off tracing
    in that scope.
 
+   If there is any error occurred in the trace function, it will be unset, just
+   like ``settrace(None)`` is called.
+
    The events have the following meaning:
 
    ``'call'``