mirror of https://github.com/python/cpython
GH-104787: use bitfields in `_asyncio` (#104788)
This commit is contained in:
parent
8da9d1b163
commit
829ac13b69
|
@ -119,11 +119,14 @@ typedef enum {
|
|||
PyObject *prefix##_result; \
|
||||
PyObject *prefix##_source_tb; \
|
||||
PyObject *prefix##_cancel_msg; \
|
||||
fut_state prefix##_state; \
|
||||
int prefix##_log_tb; \
|
||||
int prefix##_blocking; \
|
||||
PyObject *prefix##_weakreflist; \
|
||||
PyObject *prefix##_cancelled_exc;
|
||||
PyObject *prefix##_cancelled_exc; \
|
||||
fut_state prefix##_state; \
|
||||
/* These bitfields need to be at the end of the struct
|
||||
so that these and bitfields from TaskObj are contiguous.
|
||||
*/ \
|
||||
unsigned prefix##_log_tb: 1; \
|
||||
unsigned prefix##_blocking: 1;
|
||||
|
||||
typedef struct {
|
||||
FutureObj_HEAD(fut)
|
||||
|
@ -131,13 +134,13 @@ typedef struct {
|
|||
|
||||
typedef struct {
|
||||
FutureObj_HEAD(task)
|
||||
unsigned task_must_cancel: 1;
|
||||
unsigned task_log_destroy_pending: 1;
|
||||
int task_num_cancels_requested;
|
||||
PyObject *task_fut_waiter;
|
||||
PyObject *task_coro;
|
||||
PyObject *task_name;
|
||||
PyObject *task_context;
|
||||
int task_must_cancel;
|
||||
int task_log_destroy_pending;
|
||||
int task_num_cancels_requested;
|
||||
} TaskObj;
|
||||
|
||||
typedef struct {
|
||||
|
|
Loading…
Reference in New Issue