การจัดสรรวัตถุสเกลาร์แทนที่ล้มเหลวหลังจากบันทึกฮีปไปยังไฟล์โดยใช้ JVM

แอปพลิเคชันของฉันใช้ฮีปจำนวนมาก (-Xmx7g) และยังคงทำงานไปที่ OutOfMemory-Exception ดังนั้นฉันจึงพยายามบันทึกฮีปด้วย -XX:+HeapDumpOnOutOfMemoryError JVM-Option แต่หลังจากสร้างไฟล์สำเร็จ โปรแกรมจะรันเข้าสู่ข้อยกเว้นนี้: java.lang.OutOfMemoryError: พื้นที่ฮีป Java: การจัดสรรอ็อบเจ็กต์ที่ถูกแทนที่สเกลาร์ล้มเหลว

ขอบคุณล่วงหน้า


person JHarzenetter    schedule 14.02.2020    source แหล่งที่มา
comment
ตามข้อมูลของ Rolf โปรแกรมควรจะตายหลังจากพบ OutOfMemoryError โปรดสังเกตว่าเป็นส่วนขยายของ VirtualMachineError ไม่ใช่ Exception ดังนั้นคุณควรคาดหวังว่าจะมีสิ่งเลวร้ายทุกประเภทเกิดขึ้นหลังจากจัดการข้อผิดพลาดนั้นแล้ว   -  person Jeff Holt    schedule 14.02.2020
comment
คุณคาดหวังอะไร? -XX:+HeapDumpOnOutOfMemoryError ทำตามชื่อของมันทุกประการ โดยจะสร้างฮีปดัมพ์ บน OutOfMemoryError ไม่ใช่ แทน   -  person Holger    schedule 14.02.2020