Linux không (chưa) tuân theo tiêu chuẩn POSIX.1 nói rằng một renicequy trình ảnh hưởng đến "tất cả các luồng phạm vi hệ thống trong quy trình", bởi vì theo các chủ đề pthreads (7) doc "không chia sẻ một giá trị tốt đẹp chung".
Tuy nhiên, đôi khi, có thể thuận tiện cho renice"mọi thứ" liên quan đến một quy trình nhất định (một ví dụ sẽ là các quy trình con của Apache và tất cả các luồng của chúng). Vì thế,
- Làm thế nào tôi có thể
renicetất cả các chủ đề thuộc về một quy trình nhất định? - Làm thế nào tôi có thể
renicetất cả các quá trình con thuộc một quy trình nhất định?
Tôi đang tìm kiếm một giải pháp khá dễ dàng.
Tôi biết rằng các nhóm quy trình đôi khi có thể hữu ích, tuy nhiên, chúng không phải lúc nào cũng khớp với những gì tôi muốn làm: chúng có thể bao gồm một bộ quy trình rộng hơn hoặc khác nhau.
Sử dụng một cgroupquản lý bởi systemdcũng có thể hữu ích, nhưng ngay cả khi tôi muốn nghe về nó, tôi chủ yếu tìm kiếm một giải pháp "tiêu chuẩn".
EDIT: đồng thời, man (7) pthreadsnói rằng "tất cả các luồng trong một tiến trình được đặt trong cùng một nhóm luồng; tất cả các thành viên của một nhóm luồng đều có chung một PID". Vì vậy, thậm chí có khả năng đối với renicemột thứ không có PID riêng không?
man (7) pthreadsnói về việc triển khai (NPTL) hiện tại: "tất cả các luồng trong một quy trình được đặt trong cùng một nhóm luồng; tất cả các thành viên của nhóm luồng chia sẻ cùng một PID" và "Các luồng không chia sẻ một giá trị đẹp chung". Sau đó, làm thế nào bạn có thể gia hạn một luồng không có PID riêng, khirenicesử dụng PID để làm như vậy?