forked from python/cpython
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into pythongh-115103-qsbr
- Loading branch information
Showing
175 changed files
with
8,608 additions
and
3,273 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
.. highlight:: c | ||
|
||
PyTime C API | ||
============ | ||
|
||
.. versionadded:: 3.13 | ||
|
||
The clock C API provides access to system clocks. | ||
It is similar to the Python :mod:`time` module. | ||
|
||
For C API related to the :mod:`datetime` module, see :ref:`datetimeobjects`. | ||
|
||
|
||
Types | ||
----- | ||
|
||
.. c:type:: PyTime_t | ||
A timestamp or duration in nanoseconds, represented as a signed 64-bit | ||
integer. | ||
|
||
The reference point for timestamps depends on the clock used. For example, | ||
:c:func:`PyTime_Time` returns timestamps relative to the UNIX epoch. | ||
|
||
The supported range is around [-292.3 years; +292.3 years]. | ||
Using the Unix epoch (January 1st, 1970) as reference, the supported date | ||
range is around [1677-09-21; 2262-04-11]. | ||
The exact limits are exposed as constants: | ||
|
||
.. c:var:: PyTime_t PyTime_MIN | ||
Minimum value of :c:type:`PyTime_t`. | ||
|
||
.. c:var:: PyTime_t PyTime_MAX | ||
Maximum value of :c:type:`PyTime_t`. | ||
|
||
|
||
Clock Functions | ||
--------------- | ||
|
||
The following functions take a pointer to a :c:expr:`PyTime_t` that they | ||
set to the value of a particular clock. | ||
Details of each clock are given in the documentation of the corresponding | ||
Python function. | ||
|
||
The functions return ``0`` on success, or ``-1`` (with an exception set) | ||
on failure. | ||
|
||
On integer overflow, they set the :c:data:`PyExc_OverflowError` exception and | ||
set ``*result`` to the value clamped to the ``[PyTime_MIN; PyTime_MAX]`` | ||
range. | ||
(On current systems, integer overflows are likely caused by misconfigured | ||
system time.) | ||
|
||
As any other C API (unless otherwise specified), the functions must be called | ||
with the :term:`GIL` held. | ||
|
||
.. c:function:: int PyTime_Monotonic(PyTime_t *result) | ||
Read the monotonic clock. | ||
See :func:`time.monotonic` for important details on this clock. | ||
.. c:function:: int PyTime_PerfCounter(PyTime_t *result) | ||
Read the performance counter. | ||
See :func:`time.perf_counter` for important details on this clock. | ||
.. c:function:: int PyTime_Time(PyTime_t *result) | ||
Read the “wall clock” time. | ||
See :func:`time.time` for details important on this clock. | ||
Conversion functions | ||
-------------------- | ||
.. c:function:: double PyTime_AsSecondsDouble(PyTime_t t) | ||
Convert a timestamp to a number of seconds as a C :c:expr:`double`. | ||
The function cannot fail, but note that :c:expr:`double` has limited | ||
accuracy for large values. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.