Documentation of os.exec*() provides confusing information about "flushing file descriptors"
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 77.2k
- Fork
- 35.9k
- Chỉ số merge pull request
- Chỉ số pull request đang chờ
Mô tả
Documentation
The documentation of os.exec*() says:
The current process is replaced immediately. Open file objects and descriptors are not flushed, so if there may be data buffered on these open files, you should flush them using sys.stdout.flush() or os.fsync() before calling an exec* function.
However, os.fsync() flushs OS buffers to disk, and has nothing to with flushing userspace buffer to OS.
Linked PRs
- gh-133333
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với tài liệu về os.exec*() được trích dẫn trong issue và so sánh vai trò của sys.stdout.flush() với os.fsync(). Xác nhận rằng cách diễn đạt phân biệt chính xác việc đệm trong userspace với các bộ đệm của OS, sau đó kiểm tra xem tài liệu đã sửa có giải thích rõ ràng những gì cần được flush trước exec*() hay không.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- documentation
- Loại issue
- Tài liệu
- Độ khó
- 1/5
- Thời gian dự kiến
- Dưới một giờ
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 45/100