Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

เราจะหยุดเธรดใน Java ได้อย่างไร


เมื่อใดก็ตามที่เราต้องการหยุดเธรดไม่ให้ทำงานโดยการเรียก stop() วิธีการ กระทู้ คลาสใน Java เมธอดนี้หยุดการทำงานของเธรดที่รันอยู่และลบออกจากพูลเธรดที่รอและขยะที่รวบรวม เธรดจะย้ายไปยังสถานะที่ตายแล้วโดยอัตโนมัติเมื่อถึงจุดสิ้นสุดของวิธีการ หยุด() เมธอด เลิกใช้ ใน Java เนื่องจาก ความปลอดภัยของเธรด ประเด็นต่างๆ

ไวยากรณ์

@Deprecatedpublic หยุดเป็นโมฆะสุดท้าย ()

ตัวอย่าง

<ก่อนหน้า> นำเข้า java.lang.Thread.currentThread แบบคงที่ คลาสสาธารณะ ThreadStopTest { โมฆะแบบสาธารณะหลัก (สตริง args []) พ่น InterruptedException { UserThread userThread =ใหม่ UserThread (); เธรดเธรด =เธรดใหม่ (userThread, "T1"); thread.start(); System.out.println(currentThread().getName() + " กำลังหยุดเธรดผู้ใช้"); userThread.stop(); เธรด. สลีป (2000); System.out.println(currentThread().getName() + " เสร็จสิ้นแล้ว"); }} คลาส UserThread ใช้ Runnable { ทางออกบูลีนระเหยส่วนตัว =เท็จ; โมฆะสาธารณะ () { ในขณะที่ (! ออก) { System.out.println ("เธรดผู้ใช้กำลังทำงาน"); } System.out.println("เธรดผู้ใช้หยุดทำงานแล้ว"); } โมฆะสาธารณะหยุด () { ออก =จริง; }}

ผลลัพธ์

main กำลังหยุดเธรดผู้ใช้ เธรดผู้ใช้กำลังทำงาน เธรดผู้ใช้หยุดทำงานแล้ว ในตอนนี้ เธรดผู้ใช้หยุดทำงานแล้ว