Tôi có một kịch bản nơi tôi đã tạo đường ống để liên lạc giữa hai con và cha mẹ. Phụ huynh viết (sử dụng chức năng ghi) dữ liệu vào đường ống và đóng bộ mô tả tệp tương ứng. Vấn đề là khi tôi muốn ghi dữ liệu một lần nữa vào đường ống, hàm viết trả về mã lỗi -1. Tôi nghĩ rằng nó vì kết thúc viết đã bị đóng trong lần lặp trước. Sau đó, làm thế nào để mở mô tả tập tin tương ứng sau khi nó đã được đóng lại một lần.Cách mở lại một bộ mô tả tệp đã đóng
Tôi đã thử sử dụng hàm open() yêu cầu đường dẫn đến một số tệp như tranh luận. Nhưng tôi không sử dụng bất kỳ tệp nào trong ứng dụng của mình. Tôi có các bộ mô tả tập tin đơn giản (int arr [2]).
Có thể đạt được kịch bản trên với ống ????
nếu chúng tôi không đóng bộ mô tả tập tin, nó sẽ không gửi EOF vào dòng tương ứng. Vì vậy, trong quá trình con nó sẽ chờ liên tục cho đầu vào. Nhưng, tôi muốn viết số lần giới hạn vào luồng và đọc đồng thời ở đầu kia của đường ống – chaitu
@chaitu: Đúng là nếu bạn không đóng đầu ghi, đầu đọc sẽ không hiển thị phần cuối của tệp . Điều này có nghĩa là bạn cần sử dụng thứ gì đó khác với phần cuối của tệp để biểu thị phần cuối của thư, nếu bạn muốn gửi nhiều thư hơn cho con (thông thường, bạn sẽ sử dụng thông điệp có độ dài cố định để trẻ biết được bao lâu nó là). – caf