피클 버퍼 객체¶
Added in version 3.8.
pickle.PickleBuffer 객체는 pickle 모듈과 함께 사용하는 아웃 오브 밴드(out-of-band) 데이터 전송을 위해 buffer-providing object 를 래핑합니다.
-
PyTypeObject PyPickleBuffer_Type¶
이
PyTypeObject인스턴스는 파이썬 피클 버퍼 타입을 나타내며, 이는 파이썬 계층의pickle.PickleBuffer와 동일한 객체입니다.
-
PyObject *PyPickleBuffer_FromObject(PyObject *obj)¶
obj 로부터 피클 버퍼를 생성합니다.
obj 가 buffer protocol 을 지원하지 않는 경우 이 함수는 실패합니다.
성공 시 새로운 피클 버퍼 인스턴스를 반환하고, 실패 시 예외를 설정하고
NULL을 반환합니다.파이썬에서 obj 와 함께
pickle.PickleBuffer를 호출하는 것과 유사합니다.
-
const Py_buffer *PyPickleBuffer_GetBuffer(PyObject *picklebuf)¶
피클 버퍼가 래핑하는 하부
Py_buffer에 대한 포인터를 가져옵니다.반환된 포인터는 picklebuf 가 살아있고 해제되지 않은 동안에만 유효합니다. 호출자는 반환된
Py_buffer를 수정하거나 해제해서는 안 됩니다. 피클 버퍼가 해제된 경우ValueError를 발생시킵니다.성공 시 버퍼 뷰에 대한 포인터를 반환하고, 실패 시 예외를 설정하고
NULL을 반환합니다.
-
int PyPickleBuffer_Release(PyObject *picklebuf)¶
피클 버퍼가 보유한 하부 버퍼를 해제합니다.
성공 시
0을 반환하고, 실패 시 예외를 설정하고-1을 반환합니다.파이썬에서
pickle.PickleBuffer.release()를 호출하는 것과 유사합니다.