في برنامج Java متعدد الخيوط، لا يُسمح لجميع سلاسل الرسائل بإلقاء استثناءات محددة غير مكتشفة، مما يعني أن كل مؤشر ترابط يحتاج إلى معالجة الاستثناءات المحددة الخاصة به. هذا مقيد بإعلان الأسلوب java.lang.Runnable.run() (نظرًا لعدم وجود جزء استثناء للطرح في إعلان الأسلوب هذا). ومع ذلك، قد يستمر مؤشر الترابط في طرح استثناء لم يتم التحقق منه، عند طرح مثل هذا الاستثناء، سينتهي الخيط، ولن يتأثر الخيط الرئيسي والخيوط الأخرى على الإطلاق، ولن يتم إدراك الاستثناء الذي تم طرحه بواسطة خيط معين. الكل (يقول أيضًا أنه لا يمكن اكتشاف هذا الاستثناء على الإطلاق). ينشأ تصميم JVM هذا من المفهوم: "يتم تنفيذ سلاسل الرسائل بشكل مستقل عن أجزاء من التعليمات البرمجية. يجب حل مشكلات سلاسل الرسائل بواسطة السلاسل نفسها بدلاً من تفويضها إلى الخارج." أو الاستثناءات غير المحددة) يجب محاولة اكتشافها ومعالجتها داخل حدود كود مؤشر الترابط (ضمن طريقة التشغيل).
ولكن إذا لم يحاول الخيط التقاط استثناء لم يتم التحقق منه بنفسه، وأردنا التقاط هذا الاستثناء ومعالجته خارج حدود رمز الخيط (خارج طريقة التشغيل)، فإن Java توفر لنا طريقة لالتقاط الاستثناء عند حدوث استثناء آلية رد الاتصال لمعالجة الاستثناءات خارج حدود رمز الموضوع هي طريقة setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh) التي يوفرها كائن Thread.
من خلال تعيين UncaughtExceptionHandler لمؤشر الترابط من خلال هذه الطريقة، يمكنك التأكد من أنه عند حدوث استثناء في مؤشر الترابط، يمكن معالجة الاستثناء عن طريق إعادة استدعاء طريقة UncaughtException(Thread t, Throwable e) العامة لواجهة UncaughtExceptionHandler أو الغرض من ذلك هو أنه يمكن استخدامه في مؤشر الترابط خارج حدود التعليمات البرمجية (خارج طريقة التشغيل () الخاصة بمؤشر الترابط)، هناك مكان للتعامل مع الاستثناءات التي لم يتم اكتشافها. ولكن ما يجب أن يكون واضحًا بشكل خاص هو أنه على الرغم من معالجة الاستثناء في طريقة رد الاتصال، إلا أن طريقة رد الاتصال لا تزال في مؤشر الترابط الذي طرح الاستثناء عند تنفيذه!
بالمقارنة مع الطريقة المذكورة أعلاه، هناك طريقة برمجة أخرى يمكن استخدامها كمرجع، أي أنه في بعض الأحيان قد يرغب المتصل بالخيط الرئيسي في معرفة الاستثناءات التي حدثت أثناء تنفيذ الخيط الفرعي، ولكن قد لا يكون ذلك ضروريًا. التعامل معها أو التعامل معها على الفور، ثم يمكن لطريقة بدء الخيط الفرعي جمع مثيلات الاستثناء التي طرحها الخيط الفرعي وإعادتها إلى المتصل كقائمة استثناءات، ويمكن للمتصل أن يقرر كيفية الاستجابة وفقًا للموقف غير الطبيعي. . ومع ذلك، من المهم ملاحظة أن مؤشر الترابط الفرعي قد تم إنهاؤه بالفعل في هذا الوقت.