จะยกเลิกการใช้เธรด (และลูก) ทั้งหมดของกระบวนการเดียวบน Linux ได้อย่างไร
ลินุกซ์ยังไม่ได้ปฏิบัติตามมาตรฐาน POSIX.1 ซึ่งระบุว่า a reniceในกระบวนการส่งผลกระทบต่อ "เธรดขอบเขตระบบทั้งหมดในกระบวนการ" เนื่องจากตามpthreads (7) doc "เธรดไม่ได้แชร์ค่า nice ที่ดี" อย่างไรก็ตามบางครั้งมันสามารถสะดวกในการrenice"ทุกอย่าง" ที่เกี่ยวข้องกับกระบวนการที่กำหนด (ตัวอย่างหนึ่งคือกระบวนการลูก Apache และเธรดทั้งหมดของพวกเขา) ดังนั้น, ฉันจะกระทู้reniceทั้งหมดที่เป็นของกระบวนการที่กำหนดได้อย่างไร ฉันจะกระบวนการลูกreniceทั้งหมดที่เป็นของกระบวนการที่กำหนดได้อย่างไร ฉันกำลังมองหาทางออกที่ค่อนข้างง่าย ฉันรู้ว่าบางครั้งกลุ่มกระบวนการอาจมีประโยชน์อย่างไรก็ตามพวกเขาไม่ตรงกับสิ่งที่ฉันต้องการทำเสมอ: พวกเขาสามารถรวมกระบวนการที่กว้างขึ้นหรือชุดที่แตกต่างกัน การใช้การcgroupจัดการโดยsystemdอาจมีประโยชน์ แต่แม้ว่าฉันสนใจที่จะได้ยินเกี่ยวกับมันฉันส่วนใหญ่มองหาโซลูชัน "มาตรฐาน" แก้ไข: ยังman (7) pthreadsบอกว่า "กระทู้ทั้งหมดในกระบวนการจะอยู่ในกลุ่มด้ายเดียวกันสมาชิกทั้งหมดของกลุ่มกระทู้ใช้ PID เดียวกัน" ดังนั้นมันเป็นไปได้ที่จะมีreniceบางสิ่งที่ไม่มี PID ของตัวเองหรือไม่?