คำถามติดแท็ก heap-memory

ฮีปคือหน่วยความจำกระบวนการที่ตั้งไว้สำหรับการจัดสรรแบบไดนามิก

20
เกิดข้อผิดพลาด java.lang.OutOfMemoryError: เกินขีด จำกัด ค่าโสหุ้ย GC
ฉันได้รับข้อความแสดงข้อผิดพลาดขณะที่ฉันทำการทดสอบ JUnit: java.lang.OutOfMemoryError: GC overhead limit exceeded ฉันรู้ว่าอะไรOutOfMemoryErrorคือ แต่ขีด จำกัด ค่าใช้จ่ายของ GC หมายถึงอะไร ฉันจะแก้ปัญหานี้ได้อย่างไร

10
ขนาดฮีพ Java สูงสุดเริ่มต้นถูกกำหนดอย่างไร?
หากฉันไม่ใช้-Xmxnตัวเลือกจากบรรทัดคำสั่ง Java จะมีการใช้ค่าเริ่มต้น ตามเอกสาร Java "ค่าเริ่มต้นถูกเลือกที่รันไทม์ตามการกำหนดค่าระบบ" การตั้งค่าการกำหนดค่าระบบใดที่ส่งผลต่อค่าเริ่มต้น
420 java  heap  heap-memory 

19
วิธีจัดการกับข้อผิดพลาด“ java.lang.OutOfMemoryError: Java heap space” ข้อผิดพลาด?
ฉันกำลังเขียนฝั่งไคลเอ็นต์สวิงแอพลิเคชัน (นักออกแบบตัวอักษรกราฟิก) ในJava 5 เมื่อเร็ว ๆ นี้ฉันพบjava.lang.OutOfMemoryError: Java heap spaceข้อผิดพลาดเนื่องจากฉันไม่ได้ระมัดระวังในการใช้หน่วยความจำ ผู้ใช้สามารถเปิดได้ไม่ จำกัด จำนวนไฟล์และโปรแกรมเก็บวัตถุที่เปิดอยู่ในหน่วยความจำ หลังจากที่มีการวิจัยอย่างรวดเร็วผมพบว่าการยศาสตร์ใน 5.0 โปรแกรม Java Virtual Machineและคนอื่น ๆ บอกว่าบน Windows เครื่อง JVM 64MBค่าเริ่มต้นขนาดสูงสุดกองเป็น ด้วยสถานการณ์เช่นนี้ฉันจะจัดการกับข้อ จำกัด นี้ได้อย่างไร ฉันสามารถเพิ่มขนาดฮีพสูงสุดโดยใช้ตัวเลือกบรรทัดคำสั่งเป็นจาวา แต่นั่นต้องใช้การหา RAM ที่มีอยู่และเขียนโปรแกรมเรียกใช้หรือสคริปต์บางตัว นอกจากนี้ยังเพิ่มขึ้นบางส่วนจำกัดสูงสุดไม่ได้ในท้ายที่สุดได้รับการกำจัดของปัญหา ฉันสามารถเขียนรหัสของฉันใหม่เพื่อคงออบเจ็กต์ไปยังระบบไฟล์บ่อยครั้ง (การใช้ฐานข้อมูลเป็นสิ่งเดียวกัน) เพื่อเพิ่มหน่วยความจำ มันสามารถใช้งานได้ แต่ก็อาจทำงานได้มากเช่นกัน หากคุณสามารถชี้ให้ฉันเห็นรายละเอียดของแนวคิดข้างต้นหรือทางเลือกบางอย่างเช่นหน่วยความจำเสมือนอัตโนมัติขยายขนาดฮีปแบบไดนามิกนั่นจะยอดเยี่ยม

5
คำศัพท์ภาษาฮีป Java: คนรุ่นเก่าและรุ่นถาวร
ฉันพยายามที่จะเข้าใจในสิ่งที่แนวความคิดของหนุ่มสาว , เก่าและถาวรชั่วอายุอยู่ในคำศัพท์กอง Java และมากขึ้นโดยเฉพาะการมีปฏิสัมพันธ์ระหว่างสามชั่วอายุคน คำถามของฉันคือ: คนรุ่นใหม่คืออะไร? คนรุ่นเก่าคืออะไร? รุ่นถาวรคืออะไร คนสามชั่วอายุโต้ตอบกันและเกี่ยวข้องกันอย่างไร

12
เพิ่มขนาดฮีพใน Java
ฉันกำลังทำงานบนเซิร์ฟเวอร์ Windows 2003 (64 บิต) พร้อม RAM 8 GB ฉันจะเพิ่มหน่วยความจำฮีปสูงสุดได้อย่างไร ฉันใช้-Xmx1500mแฟล็กเพื่อเพิ่มขนาดฮีพเป็น 1500 Mb ฉันสามารถเพิ่มหน่วยความจำฮีปเป็น 75% ของหน่วยความจำกายภาพ (6 GB ฮีป) ได้หรือไม่?
276 java  heap-memory 

22
Node.js จำนวนมากออกจากหน่วยความจำ
วันนี้ฉันรันสคริปต์ของฉันสำหรับการทำดัชนีระบบไฟล์เพื่อรีเฟรชดัชนีไฟล์ RAID และหลังจาก 4 ชม. มันล้มเหลวด้วยข้อผิดพลาดต่อไปนี้: [md5:] 241613/241627 97.5% [md5:] 241614/241627 97.5% [md5:] 241625/241627 98.1% Creating missing list... (79570 files missing) Creating new files list... (241627 new files) <--- Last few GCs ---> 11629672 ms: Mark-sweep 1174.6 (1426.5) -> 1172.4 (1418.3) MB, 659.9 / 0 ms [allocation failure] [GC in …

9
เหตุใดแนวคิดทั้งสองแตกต่างกันจึงเรียกว่า "ฮีป"
เหตุใดฮีปแบบรันไทม์จึงใช้สำหรับการจัดสรรหน่วยความจำแบบไดนามิกในภาษา C และโครงสร้างข้อมูลซึ่งทั้งสองเรียกว่า "ฮีป" มีความสัมพันธ์บ้างไหม?

5
การจัดสรร stack vs heap ของ structs ใน Go และความเกี่ยวข้องกับการรวบรวมขยะ
ฉันยังใหม่กับ Go และฉันรู้สึกสับสนเล็กน้อยระหว่างการเขียนโปรแกรมแบบ C-style โดยที่ตัวแปรอัตโนมัติอยู่บนสแต็กและการจัดสรรหน่วยความจำจะมีชีวิตอยู่บนฮีปและการเขียนโปรแกรมแบบสแต็กตาม Python สิ่งเดียวที่อยู่บนสแต็กคือการอ้างอิง / พอยน์เตอร์ไปยังวัตถุบนฮีป เท่าที่ฉันสามารถบอกได้ฟังก์ชั่นทั้งสองต่อไปนี้ให้ผลลัพธ์เหมือนกัน: func myFunction() (*MyStructType, error) { var chunk *MyStructType = new(HeaderChunk) ... return chunk, nil } func myFunction() (*MyStructType, error) { var chunk MyStructType ... return &chunk, nil } เช่นจัดสรรโครงสร้างใหม่และส่งคืน ถ้าฉันเขียนว่าใน C วัตถุแรกจะวางวัตถุบนกองและอันที่สองจะวางบนกอง ตัวแรกจะกลับตัวชี้ไปที่กองที่สองจะกลับตัวชี้ไปที่กองซึ่งจะระเหยไปตามเวลาที่ฟังก์ชันส่งคืนซึ่งจะเป็นสิ่งที่ไม่ดี ถ้าฉันเขียนมันด้วยภาษาไพ ธ อน (หรือภาษาสมัยใหม่อื่น ๆ อีกมากมายยกเว้น C …

23
การตั้งค่าตัวแปรเป็น NULL หลังจากว่าง
ใน บริษัท ของฉันมีกฎการเข้ารหัสที่บอกว่าหลังจากพ้นหน่วยความจำใด ๆ NULLตั้งค่าตัวแปร ตัวอย่างเช่น ... void some_func () { int *nPtr; nPtr = malloc (100); free (nPtr); nPtr = NULL; return; } ฉันรู้สึกว่าในกรณีเช่นรหัสที่แสดงด้านบนการตั้งค่าเป็นNULLไม่มีความหมายใด ๆ หรือว่าฉันขาดอะไรไป? หากไม่มีความหมายในกรณีเช่นนี้ฉันจะดำเนินการกับ "ทีมคุณภาพ" เพื่อลบกฎการเข้ารหัสนี้ โปรดให้คำแนะนำ.

9
ตรวจสอบขนาดฮีปของแอปพลิเคชันใน Android
คุณจะตรวจสอบขนาดแอพพลิเคชั่นฮีปที่พร้อมใช้งานสำหรับแอพ Android โดยทางโปรแกรมได้อย่างไร ฉันได้ยินมาว่ามีฟังก์ชั่นที่ทำสิ่งนี้ใน SDK รุ่นที่ใหม่กว่า ไม่ว่าในกรณีใดฉันกำลังมองหาโซลูชันที่ใช้งานได้ตั้งแต่ 1.5 ขึ้นไป

11
java.lang.OutOfMemoryError: พื้นที่ฮีป Java
ฉันได้รับข้อผิดพลาดต่อไปนี้ในการเรียกใช้โปรแกรมมัลติเธรด java.lang.OutOfMemoryError: Java heap space ข้อผิดพลาดข้างต้นเกิดขึ้นในหนึ่งในเธรด ถึงความรู้ของฉันพื้นที่ Heap ถูกครอบครองโดยตัวแปรอินสแตนซ์เท่านั้น หากถูกต้องเหตุใดจึงเกิดข้อผิดพลาดหลังจากทำงานได้ดีในบางครั้งเนื่องจากมีการจัดสรรพื้นที่สำหรับตัวแปรอินสแตนซ์ในขณะที่สร้างวัตถุ มีวิธีใดในการเพิ่มพื้นที่ฮีปหรือไม่? ฉันควรทำการเปลี่ยนแปลงอะไรกับโปรแกรมของฉันเพื่อที่จะใช้พื้นที่ฮีปน้อยลง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.