เหตุผลที่เป็นทางการสำหรับ“ ซอฟต์แวร์ทำให้การเชื่อมต่อยกเลิก: ข้อผิดพลาดในการเขียนซ็อกเก็ต”
รับตัวอย่างสแต็กการติดตามนี้ เกิดจาก: java.net.SocketException: ซอฟต์แวร์ทำให้เกิดการยกเลิกการเชื่อมต่อ: ข้อผิดพลาด ในการเขียนซ็อกเก็ตที่ java.net.SocketOutputStream.socketWrite0 (วิธีดั้งเดิม) ฉันพยายามตอบคำถามต่อไปนี้: รหัสอะไรที่จะโยนข้อยกเว้นนี้ (JVM? / Tomcat? / รหัสของฉัน?) ทำให้เกิดข้อยกเว้นนี้จะถูกโยนอะไร เกี่ยวกับ # 1: แหล่งที่มาของ JVM ของซันไม่มีข้อความที่แน่นอนนี้ แต่ฉันคิดว่าข้อความซอฟต์แวร์ที่ทำให้เกิดการยกเลิกการเชื่อมต่อ: ข้อผิดพลาดในการเขียนซ็อกเก็ตเกิดจากการใช้งานดั้งเดิมSocketOutputStream: private native void socketWrite0(FileDescriptor fd, byte[] b, int off, int len) throws IOException; เกี่ยวกับ # 2 ฉันเดาว่ามันเกิดขึ้นเมื่อลูกค้าได้ยกเลิกการเชื่อมต่อก่อนที่จะได้รับการตอบสนองอย่างเต็มที่ (เช่นส่งคำขอ แต่ก่อนที่จะได้รับการตอบสนองอย่างเต็มรูปแบบมันก็ปิด / ยุติ / ออฟไลน์) คำถาม: สมมติฐานข้างต้นถูกต้อง (# …