mirror of
https://github.com/python/cpython
synced 2026-09-29 11:30:29 +03:00
Issue #9079: Added _PyTime_gettimeofday(_PyTime_timeval *tp) to C API
exposed in Python.h. This function is similar to POSIX gettimeofday(struct timeval *tp), but available on platforms without gettimeofday().
This commit is contained in:
parent
1c5471f319
commit
6fc4ade2bb
8 changed files with 150 additions and 85 deletions
|
|
@ -61,6 +61,7 @@
|
|||
#error "PYMALLOC_DEBUG requires WITH_PYMALLOC"
|
||||
#endif
|
||||
#include "pymath.h"
|
||||
#include "pytime.h"
|
||||
#include "pymem.h"
|
||||
|
||||
#include "object.h"
|
||||
|
|
|
|||
70
Include/pytime.h
Normal file
70
Include/pytime.h
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
#ifndef Py_PYTIME_H
|
||||
#define Py_PYTIME_H
|
||||
|
||||
#include "pyconfig.h" /* include for defines */
|
||||
|
||||
/**************************************************************************
|
||||
Symbols and macros to supply platform-independent interfaces to time related
|
||||
functions and constants
|
||||
**************************************************************************/
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_GETTIMEOFDAY
|
||||
typedef struct timeval _PyTime_timeval;
|
||||
#else
|
||||
typedef struct {
|
||||
time_t tv_sec; /* seconds since Jan. 1, 1970 */
|
||||
long tv_usec; /* and microseconds */
|
||||
} _PyTime_timeval;
|
||||
#endif
|
||||
|
||||
/* Similar to POSIX gettimeofday but cannot fail. If system gettimeofday
|
||||
* fails or is not available, fall back to lower resolution clocks.
|
||||
*/
|
||||
PyAPI_FUNC(void) _PyTime_gettimeofday(_PyTime_timeval *tp);
|
||||
|
||||
/* Dummy to force linking. */
|
||||
PyAPI_FUNC(void) _PyTime_Init(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* Py_PYTIME_H */
|
||||
#ifndef Py_PYTIME_H
|
||||
#define Py_PYTIME_H
|
||||
|
||||
#include "pyconfig.h" /* include for defines */
|
||||
|
||||
/**************************************************************************
|
||||
Symbols and macros to supply platform-independent interfaces to time related
|
||||
functions and constants
|
||||
**************************************************************************/
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_GETTIMEOFDAY
|
||||
typedef struct timeval _PyTime_timeval;
|
||||
#else
|
||||
typedef struct {
|
||||
time_t tv_sec; /* seconds since Jan. 1, 1970 */
|
||||
long tv_usec; /* and microseconds */
|
||||
} _PyTime_timeval;
|
||||
#endif
|
||||
|
||||
/* Similar to POSIX gettimeofday but cannot fail. If system gettimeofday
|
||||
* fails or is not available, fall back to lower resolution clocks.
|
||||
*/
|
||||
PyAPI_FUNC(void) _PyTime_gettimeofday(_PyTime_timeval *tp);
|
||||
|
||||
/* Dummy to force linking. */
|
||||
PyAPI_FUNC(void) _PyTime_Init(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* Py_PYTIME_H */
|
||||
Loading…
Add table
Add a link
Reference in a new issue