को डिमननाइज़ नहीं करता है मैं मुख्य रूप से कुछ और (यहां, time.sleep(100)
) करते समय एक अलग थ्रेड में SimpleHTTPServer
लॉन्च करना चाहता हूं।SimpleHTTPServer धागे के रूप में लॉन्च किया गया:
from SimpleHTTPServer import SimpleHTTPRequestHandler
from BaseHTTPServer import HTTPServer
server = HTTPServer(('', 8080), SimpleHTTPRequestHandler)
print 'OK UNTIL NOW'
thread = threading.Thread(target = server.serve_forever())
print 'STUCK HERE'
thread.setdaemon = True
try:
thread.start()
except KeyboardInterrupt:
server.shutdown()
sys.exit(0)
print 'OK'
time.sleep(120)
हालांकि, धागा रहता है "अवरुद्ध", यानी एक डेमॉन के रूप में शुरू नहीं कर रहा है और दुभाषिया print 'OK'
तक नहीं पहुंचता है: यहाँ मेरी कोड का एक सरलीकृत नमूना है। यह न तो STUCK HERE
तक पहुंचता है।
मुझे लगता है कि धागा केवल threading.Thread(...)
पर कॉल करते समय प्रारंभ किया जाएगा और यह तब भी मुख्य धागा तब तक आगे बढ़ेगा जब तक इसे thread.start
लॉन्च करने के लिए निर्देश नहीं मिला।
क्या इस कार्य को पूरा करने का कोई बेहतर तरीका है?
:
इस होना करने के लिए थ्रेड = थ्रेडिंग। थ्रेड (target = server.serve_forever) – vijay