คำถามติดแท็ก jvm

Java Virtual Machine (JVM) เปิดใช้งานชุดของโปรแกรมซอฟต์แวร์คอมพิวเตอร์และโครงสร้างข้อมูลเพื่อใช้โมเดลเครื่องเสมือนสำหรับการทำงานของโปรแกรมคอมพิวเตอร์และสคริปต์อื่น ๆ ใช้แท็กนี้สำหรับคำถามที่เกี่ยวข้องกับเครื่องมือที่จัดทำโดย JVM หรือวิธีการทำงานในสถานการณ์เฉพาะ

3
-XX: MaxPermSize ทำอะไร
โดยเฉพาะเหตุใดจึงช่วยแก้ไขปัญหา PermGen OutOfMemoryError นอกจากนี้คะแนนโบนัสสำหรับคำตอบที่ชี้ให้ฉันไปที่เอกสารเกี่ยวกับข้อโต้แย้ง JVM ...
260 java  jvm  jvm-arguments 

4
ความแตกต่างระหว่างโหลดเดอร์คลาสบริบทของเธรดและ classloader ปกติ
ความแตกต่างระหว่างตัวโหลดคลาสบริบทของเธรดและตัวโหลดคลาสปกติคืออะไร นั่นคือถ้าThread.currentThread().getContextClassLoader()และgetClass().getClassLoader()ส่งคืนคลาสโหลดเดอร์อ็อบเจ็กต์ที่แตกต่างกันอันใดจะถูกใช้?

20
วิธีรับเธรดและฮีปของกระบวนการ Java บน Windows ที่ไม่ได้ทำงานในคอนโซล
ฉันมีแอปพลิเคชัน Java ที่ฉันเรียกใช้จากคอนโซลซึ่งจะดำเนินการกับกระบวนการ Java อื่น ฉันต้องการรับเธรด / กองฮีปของกระบวนการย่อยนั้น ใน Unix ฉันสามารถทำได้kill -3 <pid>แต่ใน Windows AFAIK วิธีเดียวที่จะได้รับการถ่ายโอนข้อมูลเธรดคือ Ctrl-Break ในคอนโซล แต่นั่นทำให้ฉันถ่ายโอนข้อมูลของกระบวนการหลักไม่ใช่ลูก มีวิธีอื่นในการรับการถ่ายโอนข้อมูลฮีปนั้นหรือไม่

13
รับรายการเธรดทั้งหมดที่กำลังทำงานใน Java
มีวิธีใดบ้างที่ฉันสามารถรับรายการเธรดที่กำลังรันทั้งหมดใน JVM ปัจจุบัน (รวมถึงเธรดที่ไม่ได้เริ่มโดยคลาสของฉัน)? มันเป็นไปได้ที่จะได้รับThreadและClassวัตถุของกระทู้ทั้งหมดในรายการหรือไม่ ฉันต้องการที่จะสามารถทำสิ่งนี้ผ่านรหัส
232 java  multithreading  jvm 


6
การอนุญาต PermGen ใน JDK 8
ฉันติดตั้ง JDK 8 แล้วและพยายามเรียกใช้ Eclipse ฉันได้รับข้อความเตือนต่อไปนี้: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0 อะไรคือสาเหตุของการเพิกเฉยตัวเลือก VM นี้?
229 java  java-8  jvm  permgen 


30
ข้อผิดพลาด Eclipse: 'ล้มเหลวในการสร้าง Java Virtual Machine'
ฉันได้รับข้อความแสดงข้อผิดพลาดนี้เมื่อฉันเริ่ม Eclipse Helios บน Windows 7: ไม่สามารถสร้าง Java Virtual Machine eclipse.ini ของฉันมีลักษณะดังนี้: -startup plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar -vm P:\Programs\jdk1.6\bin --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503 -product org.eclipse.epp.package.jee.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.XXMaxPermSize 512m --launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms120m -Xmn100m -Xmx1024m JAVA_HOME ของฉันตั้งค่าอย่างถูกต้องเท่าที่ฉันสามารถบอกได้ ฉันจะแก้ไขสิ่งนี้ได้อย่างไร สิ่งที่ฉันได้ลองมาแล้ว: การเพิ่มพา ธ แบบเต็มไปยัง javaw.exe -vm P:\Programs\jdk1.6\bin\\bin\javaw.exe การถอด-vmตัวเลือกทั้งหมด การลบการ--launcher.XXMaxPermSizeแก้ไขปัญหา แต่มันทำให้เกิดข้อผิดพลาด permgen การลบค่า512ของการ--launcher.XXMaxPermSizeแก้ไขปัญหา แต่มันทำให้เกิดข้อผิดพลาด permgen …
211 eclipse  jvm 

13
Java“ Virtual Machine” กับ Python“ Interpreter” parlance?
ดูเหมือนว่าเป็นการยากที่จะอ่าน Python "virtual machine" ในขณะที่ใน Java "virtual machine" นั้นถูกใช้งานตลอดเวลา ทั้งตีความรหัสไบต์; ทำไมเรียกหนึ่งเครื่องเสมือนและอื่น ๆ เป็นล่าม
207 java  python  jvm 


3
JVM ตั้งค่าสถานะ CMSClassUnloadingEnabled ทำอะไรได้จริง
ฉันไม่สามารถหาคำจำกัดความของสิ่งที่ธงชาติ Java VM CMSClassUnloadingEnabledทำได้จริงนอกเหนือจากคำจำกัดความระดับสูงที่คลุมเครือเช่น "กำจัดปัญหา PermGen ของคุณ" ( ซึ่งไม่ใช่ btw) ฉันดูเว็บไซต์ของ Sun / Oracle แล้วและแม้แต่รายการตัวเลือกก็ไม่ได้พูดว่าทำอะไร จากการคาดคะเนชื่อของธงฉันเดาว่า CMS Garbage Collector ไม่ได้เป็นค่าเริ่มต้นในการยกเลิกการโหลดคลาสและค่าสถานะนี้จะเปิดใช้ แต่ฉันไม่แน่ใจ

5
เหตุใดจึงไม่มี GIL ใน Java Virtual Machine ทำไมไพ ธ อนถึงต้องการตัวแย่?
ฉันหวังว่าบางคนสามารถให้ข้อมูลเชิงลึกเกี่ยวกับสิ่งที่แตกต่างกันโดยพื้นฐานเกี่ยวกับ Java Virtual Machine ที่อนุญาตให้ใช้เธรดได้อย่างดีโดยไม่จำเป็นต้องใช้ Global Interpreter Lock (GIL) ในขณะที่ Python จำเป็นต้องมีความชั่วร้าย
177 java  python  multithreading  jvm  gil 

5
โค้ด Java 8 สามารถคอมไพล์ให้รันบน Java 7 JVM ได้หรือไม่?
Java 8 แนะนำคุณสมบัติภาษาใหม่ที่สำคัญเช่นการแสดงออกแลมบ์ดา การเปลี่ยนแปลงเหล่านี้ในภาษานั้นมาพร้อมกับการเปลี่ยนแปลงที่สำคัญเช่นนั้นในโค้ดไบต์ที่คอมไพล์ซึ่งจะป้องกันไม่ให้รันบนเครื่องเสมือน Java 7 โดยไม่ต้องใช้ตัวแปลงสัญญาณซ้ำบางตัวหรือไม่?

5
วิธีรับอาร์กิวเมนต์ VM จากภายในแอปพลิเคชัน Java
ฉันต้องตรวจสอบว่ามีตัวเลือกบางอย่างที่สามารถส่งผ่านไปยัง JVM ได้อย่างชัดเจนหรือมีค่าเริ่มต้น จะเจาะจงมากขึ้น: ฉันต้องสร้างหนึ่งเธรดที่มีขนาดสแต็คดั้งเดิมสูงกว่าค่าเริ่มต้น แต่ในกรณีที่ผู้ใช้ต้องการดูแลสิ่งต่าง ๆ ด้วยตัวเองโดยระบุ-Xssตัวเลือกที่ฉันต้องการสร้างเธรดทั้งหมดที่มีขนาดสแต็คเริ่มต้น (ซึ่งจะถูกระบุโดยผู้ใช้ในตัวเลือก -Xss) ฉันได้ตรวจสอบคลาสที่ชอบjava.lang.Systemและjava.lang.Runtimeแต่สิ่งเหล่านี้ไม่ได้ให้ข้อมูลที่เป็นประโยชน์เกี่ยวกับอาร์กิวเมนต์ VM มีวิธีใดบ้างที่จะรับข้อมูลที่ฉันต้องการ
162 java  jvm  jvm-arguments 

4
invokedynamic คืออะไรและฉันจะใช้ได้อย่างไร
ฉันคอยฟังเกี่ยวกับคุณสมบัติเจ๋ง ๆ ใหม่ ๆ ที่กำลังเพิ่มเข้าไปใน JVM และหนึ่งในฟีเจอร์เจ๋ง ๆ เหล่านั้นก็คือการเรียกใช้ ฉันต้องการจะรู้ว่ามันคืออะไรและมันทำให้การเขียนโปรแกรมไตร่ตรองใน Java ง่ายขึ้นหรือดีขึ้นอย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.