30/09/2026 · VietTechies · Biên tập

Tại Hội nghị Ngôn ngữ Python (Python Language Summit), các thảo luận tập trung vào việc hiện đại hóa Python Buffer Protocol, giao thức cho phép truy cập trực tiếp vào vùng đệm bộ nhớ của các đối tượng như bytes, bytearray và array.array nhằm tối ưu hóa hiệu năng.
Tài liệu kỹ thuật và Xử lý đồng thời an toàn
Nathan Goldbaum đã chỉ ra những hạn chế trong tài liệu hiện tại, lưu ý rằng ngôn ngữ định dạng của buffer protocol còn phân tán và chưa được quy định chi tiết, buộc các nhà phát triển phải tham chiếu trực tiếp đến PEP 3118 hoặc các bản triển khai của NumPy. Để hỗ trợ người dùng và các bên xuất dữ liệu đệm, một hướng dẫn HOWTO mới đã được đề xuất cùng với các dự thảo PEP nhằm cải thiện tính an toàn và khả năng xử lý đồng thời.
Nhằm khắc phục tình trạng thiếu cơ chế phối hợp đọc và ghi ở cấp độ giao thức, các C API mới về cấp quyền mượn bộ nhớ (leasing) như PyObject_AcquireBufferLease đã được soạn thảo dựa trên cảm hứng từ cơ chế mượn (borrowing) của Rust. Các API này cho phép bộ nhớ đệm được cho mượn ở chế độ SHARED_READ hoặc EXCLUSIVE_WRITE và sẽ báo lỗi ngay lập tức nếu xuất hiện một hợp đồng mượn không tương thích, đồng thời giữ nguyên các giao diện đệm hiện có để đảm bảo tính tương thích ngược.
Kiểu dữ liệu tùy chỉnh và Thảo luận tại Hội nghị
Một đề xuất quan trọng khác do Nathan Goldbaum và Sebastian Berg trình bày chi tiết đã giới thiệu một điểm mở rộng cho các kiểu dữ liệu tùy chỉnh, sử dụng phương pháp dựa trên không gian tên (namespace) được phân tách bằng dấu đô la ($). Cách tiếp cận này giúp tránh việc phải thông qua Hội đồng Điều hành Python (Python Steering Council) cho từng mã định dạng mới, cho phép các bản triển khai hỗ trợ phân tích hoặc từ chối an toàn các kiểu dữ liệu tùy chỉnh không xác định.
Trong phiên góp ý, các thành viên cộng đồng bao gồm Petr Viktorin, Thomas Wouters, David Hewitt, Larry Hastings và Hood Chatham đã nêu thắc mắc về các hạn chế ABI, việc yêu cầu cấp quyền mượn nên chặn (block) hay trả về lỗi, cũng như trách nhiệm của các tác giả viết C extension khi dùng các cấu trúc cấp thấp này. Việc hợp tác để đảm bảo khả năng tương thích với NumPy hiện đang được Kumar Aditya thực hiện.
Ảnh minh họa do AI tạo, không phải ảnh tư liệu.
