cuốn sách gpt4 ai đã làm

Quá trình linux c chỉ đồng bộ hóa tín hiệu và hàng đợi tin nhắn

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 10:12:56 25 4
mua khóa gpt4 Nike

Tôi đang tìm kiếm trợ giúp về việc đồng bộ hóa 3 tiến trình con và cấp độ gốc của chúng. Tôi có 3 tiến trình con, tiến trình đầu tiên đọc từ các dòng tệp và gửi chúng qua một ống dẫn đến tiến trình thứ hai, tiến trình thứ hai nhận được nó, đếm xem nó có bao nhiêu ký tự và số đó được gửi qua ống thứ hai đến tiến trình thứ ba , quy trình thứ ba sẽ in nó ra bàn điều khiển.

Bây giờ tôi phải sử dụng tín hiệu và hàng đợi tin nhắn để xử lý SIGTERM, SIGCONT và SIGTSTP. Kịch bản trông như thế này: Chỉ quy trình thứ ba mới sử dụng phản ứng với tín hiệu được gửi từ bảng điều khiển. Sau khi nhận được, anh đã "báo" cho phụ huynh. Cha mẹ lưu tín hiệu vào hàng đợi tin nhắn và "thông báo" cho con đầu tiên. Con đầu đọc, lưu và thông báo cho con thứ hai, thứ ba và con thứ ba cũng vậy.

Tôi đã thực hiện tất cả những điều này với sigaction() siginfo_t, v.v., nhưng điều tôi không thể hiểu là làm thế nào để một quy trình chờ một quy trình khác. Tôi đã đọc về wait(), waitid(), waitpid(), nhưng tất cả chúng dường như chỉ dành cho các tiến trình con.

Tôi cần một công cụ để dừng một quá trình cho đến khi một quá trình khác được ID chỉ định thực hiện điều gì đó.

câu trả lời hay nhất

Tôi hy vọng tôi hiểu câu hỏi, nhưng tôi đoán bạn cần một cái gì đó như thế này:Tiến trình con có thể đợi tiến trình cha kết thúc trong lập trình Linux bằng C không?

Về c - quy trình linux c chỉ đồng bộ hóa tín hiệu và hàng đợi tin nhắn, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/47882399/

25 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress