บทความนี้อธิบายตัวอย่างของ Java โดยใช้เธรดเพื่อสร้างการทำมัลติเธรดและเริ่มการดำเนินการ แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
ตามการสอนมีการสร้างเธรดเดียว แต่การสร้างเธรดเดียวที่เริ่มต้นนั้นไม่ได้ใช้งานได้จริง ท้ายที่สุดแล้วการวางการดำเนินการดำเนินการที่เกี่ยวข้องโดยตรงในวิธีการหลักคือการใช้งานเธรดเดียว ถัดไปทำการปรับเปลี่ยนเล็กน้อยตามรหัสที่ใช้ก่อนหน้านี้เพื่อสร้างรหัสต่อไปนี้:
คลาส ThreadDemo ขยายเธรด {threadDemo () {}; ThreadDemo (String szname) {super (szname); } โมฆะสาธารณะเรียกใช้ () {int i = 0; สำหรับ (i = 0; i <10; i ++) {system.out.println ("เรียกใช้" + (i + 1) + "ครั้ง"); }} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {threadDemo demo1 = new ThreadDemo (); ThreadDemo demo2 = new ThreadDemo (); threadDemo3 = new ThreadDemo (); demo1.start (); demo2.start (); DEMO3.Start (); -การรวบรวมรหัสและผลลัพธ์การรันมีดังนี้
E:/workspace/02_Technical Practice/01_Programming Language/05_java/02_java จากผู้เริ่มต้นถึง Mastery/Thread_demo> Javac Threaddemo.java
e:/workspace/02_Technical Practice/01_Programming Language/05_java/02_java จากผู้เริ่มต้นถึง Mastery/Thread_demo> Java ThreadDemo
เรียกใช้ 1 ครั้ง
วิ่ง 2 ครั้ง
วิ่ง 3 ครั้ง
วิ่ง 4 ครั้ง
วิ่ง 5 ครั้ง
วิ่ง 6 ครั้ง
วิ่ง 7 ครั้ง
เรียกใช้ 1 ครั้ง
วิ่ง 2 ครั้ง
เรียกใช้ 1 ครั้ง
วิ่ง 3 ครั้ง
วิ่ง 8 ครั้ง
วิ่ง 4 ครั้ง
วิ่ง 2 ครั้ง
วิ่ง 5 ครั้ง
วิ่ง 9 ครั้ง
วิ่ง 6 ครั้ง
วิ่ง 7 ครั้ง
วิ่ง 8 ครั้ง
วิ่ง 3 ครั้ง
วิ่ง 9 ครั้ง
วิ่ง 10 ครั้ง
วิ่ง 10 ครั้ง
วิ่ง 4 ครั้ง
วิ่ง 5 ครั้ง
วิ่ง 6 ครั้ง
วิ่ง 7 ครั้ง
วิ่ง 8 ครั้ง
วิ่ง 9 ครั้ง
วิ่ง 10 ครั้ง
จากผลลัพธ์ข้างต้นเราเห็นคำสั่งที่แน่นอนและดูเหมือนว่าคำสั่งการดำเนินการของงานทั้งสามนั้นไม่ได้อยู่ในลำดับ ในความเป็นจริงนี่เป็นผลมาจากทั้งสามเธรดที่สร้างขึ้นซึ่งมีการแข่งขันในการดำเนินการ
ฉันโง่จริงๆเมื่อฉันเขียนโปรแกรม แม้ว่าฉันจะทำงานให้เสร็จมานานสิ่งที่ฉันได้นำมาก่อนคืองานเธรดเดี่ยว งานจะดำเนินการตั้งแต่ต้นจนจบ แต่โชคดีที่ความเร็วในการดำเนินการของคอมพิวเตอร์ไม่เลวเลยไม่เช่นนั้นฉันจะเสียเวลาดำเนินการมาก!
แม้ว่าตอนนี้ฉันกำลังเรียนรู้ Java แต่ฉันควรลองใช้ฟังก์ชั่นนี้ในภาษาในภายหลังเช่น Python ที่รองรับมัลติเธรด มันยังคงน่าสนใจมากที่จะแตะศักยภาพของ CPU ให้มากที่สุด
สำหรับเนื้อหาที่เกี่ยวข้องกับ Java เพิ่มเติมผู้อ่านที่สนใจในเว็บไซต์นี้สามารถดูหัวข้อ: "บทสรุปของกระบวนการ Java และทักษะการใช้งานด้าย", "การสอนเกี่ยวกับโครงสร้างข้อมูล Java และอัลกอริทึม", "สรุปทักษะการดำเนินงานของ Java
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน