[Python-Dev] cpython: Issue #10278: Add an optional strict argument to time.steady(), False by default
Georg Brandl
g.brandl at gmx.net
Sat Mar 17 23:04:46 CET 2012
On 03/17/2012 09:47 PM, Michael Foord wrote:
>
> On 17 Mar 2012, at 08:49, Georg Brandl wrote:
>
>> On 03/15/2012 01:17 AM, victor.stinner wrote:
>>> http://hg.python.org/cpython/rev/27441e0d6a75 changeset:
>>> 75672:27441e0d6a75 user: Victor Stinner
>>> <victor.stinner at gmail.com> date: Thu Mar 15 01:17:09 2012 +0100
>>> summary: Issue #10278: Add an optional strict argument to time.steady(),
>>> False by default
>>>
>>> files: Doc/library/time.rst | 7 +++- Lib/test/test_time.py | 10
>>> +++++ Modules/timemodule.c | 58 +++++++++++++++++++++--------- 3 files
>>> changed, 57 insertions(+), 18 deletions(-)
>>>
>>>
>>> diff --git a/Doc/library/time.rst b/Doc/library/time.rst ---
>>> a/Doc/library/time.rst +++ b/Doc/library/time.rst @@ -226,7 +226,7 @@ The
>>> earliest date for which it can generate a time is platform-dependent.
>>>
>>>
>>> -.. function:: steady() +.. function:: steady(strict=False)
>>>
>>> .. index:: single: benchmarking @@ -236,6 +236,11 @@ adjusted. The
>>> reference point of the returned value is undefined so only the difference
>>> of consecutive calls is valid.
>>>
>>> + If available, a monotonic clock is used. By default, if *strict* is
>>> False, + the function falls back to another clock if the monotonic
>>> clock failed or is + not available. If *strict* is True, raise an
>>> :exc:`OSError` on error or + :exc:`NotImplementedError` if no monotonic
>>> clock is available.
>>
>> This is not clear to me. Why wouldn't it raise OSError on error even with
>> strict=False? Please clarify which exception is raised in which case.
>
> It seems clear to me. It doesn't raise exceptions when strict=False because
> it falls back to a non-monotonic clock. If strict is True and a non-monotonic
> clock is not available it raises OSError or NotImplementedError.
So errors are ignored when strict is false?
Georg
More information about the Python-Dev
mailing list