Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

थ्रेड में पायथन अपवाद को कैसे संभालें?

दिए गए कोड को अपवाद को पकड़ने के लिए फिर से लिखा जाता है

import sys
import threading
import time
import Queue
def thread(args1, stop_event, queue_obj):
print "start thread"
stop_event.wait(12)
if not stop_event.is_set():
try:
raise Exception("boom!")
except Exception:
queue_obj.put(sys.exc_info())
pass
try:
queue_obj = Queue.Queue()
t_stop = threading.Event()
t = threading.Thread(target=thread, args=(1, t_stop, queue_obj))
t.start()
time.sleep(15)
print "stop thread!"
t_stop.set()
try:
exc = queue_obj.get(block=False)
except Queue.Empty:
pass
else:
exc_type, exc_obj, exc_trace = exc
print exc_obj
except Exception as e:
print "It took too long"

आउटपुट

C:/Users/TutorialsPoint1/~.py
start thread
stop thread!
boom!

  1. सी # में धागे को कैसे नष्ट करें?

    एबॉर्ट () विधि का उपयोग थ्रेड्स को नष्ट करने के लिए किया जाता है। रनटाइम थ्रेडएबॉर्ट एक्सेप्शन को फेंककर थ्रेड को बंद कर देता है। इस अपवाद को पकड़ा नहीं जा सकता, नियंत्रण आखिरकार . को भेजा जाता है ब्लॉक, यदि कोई हो। धागों को नष्ट करने का तरीका दिखाने वाला एक उदाहरण निम्नलिखित है - उदाहरण using Sys

  1. जावा में UncaughtExceptionHandler का उपयोग करके अपवाद को कैसे संभालें?

    UncaughtExceptionHandler थ्रेड . के अंदर एक इंटरफ़ेस है कक्षा। जब मुख्य सूत्र जावा वर्चुअल मशीन . के एक न न आए अपवाद के कारण समाप्त होने वाला है थ्रेड के UncaughtExceptionHandler . का आह्वान करेगा कुछ त्रुटि प्रबंधन करने के अवसर के लिए जैसे फ़ाइल के अपवाद . को लॉग करना या लॉग को सर्वर पर अपलोड क

  1. टिंकर पायथन में थ्रेड का उपयोग कैसे करें?

    Tkinter के साथ, हम थ्रेडिंग का उपयोग करके एक बार में कई फ़ंक्शन कॉल कर सकते हैं . यह किसी एप्लिकेशन में कुछ कार्यों का अतुल्यकालिक निष्पादन प्रदान करता है। पायथन में एक थ्रेड का उपयोग करने के लिए, हम थ्रेडिंग . नामक एक मॉड्यूल आयात कर सकते हैं और इसके थ्रेड . को उपवर्गित करें कक्षा। हमारी नई कक्षा