Nếu có nhiều chủ đề ghi dữ liệu chiều dài cố định (nói 4 byte địa chỉ) vào một đường ống duy nhất và có một đầu đọc duy nhất của đường ống đó, có đảm bảo rằng người đọc sẽ nhận được byte theo thứ tự? Nói cách khác, là write()
đến một ống nguyên tử?unix pipe multiple writers
7
A
Trả lời
5
http://pubs.opengroup.org/onlinepubs/009695399/functions/write.html
Atomic/phi nguyên tử: A ghi là nguyên tử nếu toàn bộ số tiền viết bằng một hoạt động không được xen kẽ với các dữ liệu từ bất kỳ quá trình khác. Điều này hữu ích khi có nhiều nhà văn gửi dữ liệu đến một người đọc duy nhất. Ứng dụng cần biết số lượng lớn yêu cầu viết có thể được mong đợi là được thực hiện một cách nguyên tử. Số tối đa này là được gọi là {PIPE_BUF}. Khối lượng IEEE Std 1003.1-2001 không cho biết yêu cầu viết có nhiều hơn {PIPE_BUF} byte là nguyên tử, nhưng yêu cầu viết ít hơn {PIPE_BUF} hoặc byte.
Các vấn đề liên quan
- 1. Listview Multiple Selection
- 2. Multiple Ternary Operators
- 3. UIImagePickerController multiple select
- 4. Unity Resolve Multiple Classes
- 5. QObject Multiple Inheritance
- 6. RequireJS: Multiple main.js?
- 7. Spring DispatcherServlet Multiple Instances
- 8. pipe() và fork() trong c
- 9. boost program_options multiple values problems
- 10. OpenGL Multiple Viewports và gluPerspective()
- 11. Viết tới nămo (tên là pipe)
- 12. PipedInputStream - Cách tránh "java.io.IOException: Pipe broken"
- 13. Command Line Pipe Input trong Java
- 14. php stdin từ bash pipe và heredoc
- 15. Replace Multiple Elements String trong C#
- 16. Entity Framework 4 Multiple Object Delete (RemoveAll)
- 17. Thiết lập OpenGL Multiple Render Target
- 18. SQL Unpivot multiple columns Dữ liệu
- 19. Lệnh xuất UNIX UNIX
- 20. Ống UNIX trên khối C đọc
- 21. chạy lệnh bash pipe ở chế độ nền với & ampersand
- 22. Breaking ReadFile() chặn - Đặt tên Pipe (Windows API)
- 23. Ngoại lệ "javax.servlet.jsp.JspException: Broken pipe" có nghĩa là gì?
- 24. Chuyển hướng/Pipe wget tải xuống trực tiếp vào gunzip
- 25. Định dạng thời gian UNIX UNIX
- 26. Sử dụng Postgres Multiple Schema Database trong Rails
- 27. LINQ to SQL: Multiple/Single .dbml cho mỗi dự án?
- 28. Tạo các tệp lớp MULTIPLE dựa trên XSD
- 29. Các giải pháp thay thế cho một phần tử <select multiple = "multiple"> đơn lẻ cho các tập dữ liệu lớn
- 30. Mảng trong vỏ unix?
Cảm ơn. Tôi thấy trang người đàn ông http://linux.die.net/man/2/write và không thấy gì cả. – Manish
Lưu ý rằng giá trị của 'PIPE_BUF' thay đổi đáng kể giữa các hệ thống Unix. Xem ở đây để đối chiếu các giá trị được quan sát: http://ar.to/notes/posix#pipe-buf –