कार्यान्वयन भिन्न हो सकते हैं, लेकिन कुछ बुनियादी विचार हैं जो आवश्यकताओं से अनुसरण करते हैं।
अपवाद ऑब्जेक्ट अपने आप में एक फ़ंक्शन में बनाई गई एक वस्तु है, जो एक कॉलर में नष्ट हो जाती है। इसलिए, यह आमतौर पर स्टैक पर ऑब्जेक्ट बनाने के लिए संभव नहीं है। दूसरी ओर, कई अपवाद वस्तुएं बहुत बड़ी नहीं हैं। एर्गो, एक बना सकता है जैसे कि एक 32 बाइट बफर और अतिप्रवाह ढेर करने के लिए अगर एक बड़ा अपवाद वस्तु वास्तव में आवश्यक है।
नियंत्रण के वास्तविक हस्तांतरण के लिए, दो रणनीतियां मौजूद हैं। स्टैक को खोलने के लिए स्टैक में पर्याप्त जानकारी दर्ज करना है। यह मूल रूप से चलाने और अपवाद संचालकों को नष्ट करने वालों की सूची है जो अपवाद को पकड़ सकते हैं। जब कोई अपवाद होता है, तब तक उन विध्वंसक को निष्पादित करने वाले स्टैक को वापस चलाएं जब तक कि आप एक मिलान पकड़ न लें।
दूसरी रणनीति इस जानकारी को स्टैक के बाहर तालिकाओं में ले जाती है। अब, जब कोई अपवाद होता है, तो कॉल स्टैक का उपयोग यह पता लगाने के लिए किया जाता है कि कौन से स्कोप दर्ज किए गए हैं लेकिन बाहर नहीं निकले। फिर स्थिर तालिकाओं में देखा जाता है कि यह निर्धारित करने के लिए कि फेंके गए अपवाद को कहां संभाला जाएगा, और बीच में कौन से विध्वंसक चलते हैं। इसका मतलब है कि स्टैक पर ओवरहेड कम अपवाद है; रिटर्न पते वैसे भी आवश्यक हैं। टेबल अतिरिक्त डेटा हैं, लेकिन कंपाइलर उन्हें प्रोग्राम के एक मांग-भार वाले सेगमेंट में डाल सकते हैं।