สิ่งตีพิมพ์ในหัวข้อ 'jvm'
JVM ทำงานอย่างไรในขั้นสูง
JVM ทำงานอย่างไร?
1.คลาสโหลดเดอร์()
2. พื้นที่หน่วยความจำ
3. กลไกการดำเนินการ
1.คลาสโหลดเดอร์()
JVM ใช้กระบวนการ การโหลด การเชื่อมโยง และการเริ่มต้น เพื่อให้โปรแกรมที่รันโปรแกรมประเภทต่างๆ พร้อมใช้งาน
กำลังโหลด
ภารกิจหลักคือโหลดคลาสลงในหน่วยความจำ (เช่นตัวโหลดคลาส Boostrap, ตัวโหลดคลาสกำหนดแบบกำหนดเอง)
Hello.java › Hello.class › การโหลด JVM (ใช้ชื่อคลาสแบบเต็ม (com.company.sample…), ข้อมูลตัวแปร, ข้อมูลพาเรนต์ทันที, คลาสหรืออินเทอร์เฟซหรือ enum)
เมื่อคลาสถูกโหลด JVM..
การแบ่งปันประสบการณ์: แนวคิดการแก้ไขปัญหาออนไลน์ Java JVM
แนวคิดการแก้ไขปัญหา JVM
บทความนี้จะสรุปปรากฏการณ์ฉุกเฉินออนไลน์ทั่วไปบางประการ ตลอดจนขั้นตอนและเครื่องมือในการแก้ไขปัญหาที่เกี่ยวข้อง
วัตถุประสงค์หลักของการแบ่งปันคือเพื่อให้นักพัฒนาที่ไม่ค่อยได้สัมผัสกับปัญหาออนไลน์มีการรับรู้ล่วงหน้า เพื่อไม่ให้รีบร้อนเมื่อเผชิญกับปัญหาจริง
Samosa — ภาษาการเขียนโปรแกรม
สวัสดี! 😢
ในโพสต์นี้ ฉันอยากจะแนะนำภาษาการเขียนโปรแกรมใหม่ที่ฉันได้ทำมาตั้งแต่ไม่กี่เดือนที่ผ่านมา ฉันอยากให้คุณเจอ *ช่วยจินตนาการกลองม้วนที่นี่หน่อยได้ไหม? ขอบคุณ :-)*:
ลองดูที่นี่: https://souris-dev.github.io/samosac-jvm/
คุณสามารถลองใช้ที่นี่ในเบราว์เซอร์ได้เช่นกัน: http://playground.samosa-lang.org (โปรดทราบว่า Playground อาจทำงานไม่ถูกต้องบนโทรศัพท์มือถือเนื่องจากโปรแกรมแก้ไขโค้ดที่ใช้ในโมนาโกไม่ใช่ เข้ากันได้กับเบราว์เซอร์สมาร์ทโฟนอย่างเป็นทางการ)..
การจัดการหน่วยความจำจาวา
แม้ว่าเรามักจะทำงานกับแอปพลิเคชัน Java จำนวนมาก แต่เราไม่รู้เลยเกี่ยวกับการจัดการที่ JVM ทำด้วยตัวเองเพื่อทำให้สิ่งต่าง ๆ เป็นเรื่องง่ายสำหรับเรา เพื่อให้เราสามารถมุ่งเน้นไปที่สิ่งที่เราทำได้ดีที่สุด พัฒนาแอปพลิเคชันที่ยอดเยี่ยม
ต่างจาก C, C++ ใน Java ที่เรามี Garbage Collector เพื่อช่วยเราไม่ให้ทำความสะอาดโต๊ะหลังจากที่เราทานอาหารเสร็จ ในส่วนนี้จะอธิบายโดยย่อเกี่ยวกับการจัดการหน่วยความจำใน Java
การจัดการหน่วยความจำมีสองส่วน
หน่วยความจำถูกจัดสรรและอ้างอิงอย่างไร..
คำถามในหัวข้อ 'jvm'
กำลังโหลดคลาสด้วย classloaders ที่แตกต่างกันเพื่อยกเลิกการโหลดจาก JVM เมื่อไม่ต้องการ
ในแอปพลิเคชันของฉันฉันใช้ ServiceLoader เพื่อโหลดโมดูล (คลาสจากไฟล์ .jar) ด้วย ClassLoaders ที่แตกต่างกันเพื่อยกเลิกการโหลดอย่างสมบูรณ์เมื่อไม่ต้องการจากบริบทของแอปพลิเคชันและจาก JVM เอง ฉันรู้ว่าอาจไม่ใช่หัวข้อทั่วไป "ยกเลิกการโหลดคลาสจาก JVM"...
1247 มุมมอง
schedule
07.11.2023
สามารถคอมไพล์โค้ด Java 8 เพื่อทำงานบน Java 7 JVM ได้หรือไม่
Java 8 แนะนำคุณสมบัติภาษาใหม่ที่สำคัญ เช่น นิพจน์แลมบ์ดา
การเปลี่ยนแปลงเหล่านี้ในภาษามาพร้อมกับการเปลี่ยนแปลงที่สำคัญในโค้ดไบต์ที่คอมไพล์แล้วซึ่งจะป้องกันไม่ให้ทำงานบนเครื่องเสมือน Java 7 โดยไม่ต้องใช้ retrotranslator หรือไม่?
70326 มุมมอง
schedule
04.01.2024
Run-Time Constant Pool และ Method-Area ใน java คืออะไร
พูลคงที่รันไทม์และพื้นที่เมธอดใน java คืออะไรฉันอ่านเจอว่า JVM สร้างทั้งสองอย่าง แต่อันไหนจะเกิดขึ้นก่อน พวกมันมีอะไรอยู่บ้าง? ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก
12592 มุมมอง
schedule
17.12.2023
ตั้งค่า Command Prompt บน Windows 7 เป็น JDK7 หลังจากติดตั้ง JDK8
เมื่อฉันติดตั้ง JDK 8 แล้ว ฉันไม่สามารถตั้งค่า Command Prompt เป็น JDK 7 อีกครั้งบน Windows 7 ได้
ฉันได้ตั้งค่าคุณสมบัติสภาพแวดล้อมของระบบสำหรับทั้ง JAVA_HOME และ PATH แล้ว ให้ชี้ไปที่ JDK7 และโฟลเดอร์ JDK7/bin ของฉัน และฉันก็รีสตาร์ท SO ด้วย...
565 มุมมอง
schedule
23.11.2023
ทดสอบกับ JVM หรือไลบรารีหลายเวอร์ชันระหว่าง Maven build หรือไม่
บริบท
โดยพื้นฐานแล้ว ฉันมีไลบรารีที่ใช้ในหลายแอปพลิเคชันที่ทำงานบน java 6, java 7 และตอนนี้ java 8
ห้องสมุดยังต้องพึ่งพาห้องสมุดบุคคลที่สามที่น่าขนลุก (แต่มีประโยชน์มาก) (ซึ่งฉันจะไม่ตั้งชื่อ) -...
311 มุมมอง
schedule
22.12.2023
ฉันจะควบคุมลำดับของรายการพูลคงที่โดยใช้ ASM ได้อย่างไร
ฉันกำลังใช้การแปลงที่จะลบองค์ประกอบที่ไม่ได้ใช้ออกจากไฟล์ .class เพื่อลดขนาด เนื่องจากรายการพูลคงที่บางรายการจะไม่ได้ใช้ ฉันจึงให้ ASM คำนวณพูลค่าคงที่ใหม่ แทนที่จะคัดลอกจากอินพุต อย่างไรก็ตาม ไฟล์ .class...
1431 มุมมอง
schedule
18.12.2023
ปัญหาขนาดฮีป JVM
ฉันเพิ่งเริ่มต้นการวิจัยและพัฒนาเกี่ยวกับขนาดฮีปของ JVM และสังเกตเห็นพฤติกรรมแปลกๆ บางอย่าง
ขนาด RAM ระบบของฉันคือ 4 GB
ระบบปฏิบัติการเป็น Windows 7 แบบ 64 บิต
เวอร์ชันจาวาคือ 1.7
นี่คือข้อสังเกต:...
557 มุมมอง
schedule
13.12.2023
การโหลดคลาสโดยใช้เวอร์ชันที่แตกต่างกันของคลาสเดียวกัน: java.lang.LinkageError: พยายามนิยามคลาสที่ซ้ำกันสำหรับชื่อ
ฉันมีรหัสการทำงานที่โหลดการใช้งานคลาสที่แตกต่างกันแบบไดนามิกด้วยชื่อคลาสที่แตกต่างกัน ไฟล์คลาสถูกโหลดลงใน ฐานข้อมูลในหน่วยความจำ ( Apache Derby Db ) และ classloader จะดึงไฟล์ .class จาก คอลัมน์ BLOB
สิ่งที่ฉันต้องการทำคือการแทรกไฟล์ .class...
12135 มุมมอง
schedule
31.12.2023
Minor GC และ GC เต็มในเวลาเดียวกัน?
นี่คือบันทึก GC ส่วนหนึ่งที่แสดงเหตุการณ์ CMS GC แบบเต็ม:
2016-12-29T22:44:34.741-0500: 27572.982: [GC (CMS Initial Mark) [1 CMS-initial-mark: 2508212K(23068672K)] 2931097K(26843584K), 0.0213349 secs] [Times: user=0.22 sys=0.00, real=0.02 secs]...
622 มุมมอง
schedule
02.12.2023
แอปพลิเคชัน Kotlin พร้อมปลั๊กอินแอปพลิเคชัน Gradle
ฉันกำลังพยายามสร้างแอปพลิเคชัน HelloWorld อย่างง่ายโดยใช้ kotlin , gradle และปลั๊กอิน gradle application เมื่อฉันรันด้วยการตั้งค่าด้านล่าง ฉันได้รับข้อผิดพลาดต่อไปนี้:
Error: Main method is not static in class...
4535 มุมมอง
schedule
06.01.2024
เวลาคอมไพล์ JVM เทียบกับแคชโค้ด
ฉันได้เปรียบเทียบแอปของฉันและวิเคราะห์ด้วย JMC ฉันสังเกตเห็นว่าภายใต้โหลด มันจะทำการคอมไพล์ JIT ค่อนข้างน้อย ถ้าฉันส่งธุรกรรมจำนวนมากต่อวินาที เวลาในการคอมไพล์จะเพิ่มขึ้นอย่างรวดเร็ว...
845 มุมมอง
schedule
02.01.2024