2010-10-20 14 views
6

मेरे पास सी ++ में लिखी गई एक साधारण लाइब्रेरी है जिसे मैं boost.python का उपयोग करने के लिए पाइथन रैपर बना रहा हूं। कुछ कार्यों को निष्पादित करने में काफी समय लगता है (30 सेकंड से अधिक), और मैं इसे अंतःस्थापित करना चाहता हूं ताकि जब मैं पाइथन दुभाषिया में कीबोर्ड इंटरप्ट को ट्रिगर करने के लिए ctrl-d दबाता हूं, तो मैं किसी भी तरह से C++ में इसका जवाब देने में सक्षम हूं।मैं सी ++ में पाइथन के कीबोर्ड इंटरप्ट को कैसे पास/पकड़/प्रतिक्रिया दे सकता हूं?

क्या ऐसा करने का कोई तरीका है? मुझे boost.org या python.org पर interrupts और boost.python के बारे में कोई जानकारी नहीं मिली।

+0

यदि आपके पास इसका न्यूनतम कार्य उदाहरण है, तो यदि आप इसे शामिल करेंगे तो यह सबसे उपयोगी होगा। धन्यवाद। –

+0

मुझे एक उदाहरण मिला [यहां] (http://mail.python.org/pipermail/cplusplus-sig/2010- फरवरी/01520 9.html), लेकिन यह जटिल है। जैसा कि होता है यह PyErr_CheckSignals() का उपयोग करता है। –

+0

PyErr_CheckSignals() का उपयोग करके नीचे दिया गया जवाब अच्छी तरह से काम करता है। धन्यवाद। –

उत्तर

4

प्रत्येक बार अक्सर PyErr_CheckSignals() पर कॉल करें।

+5

एक न्यूनतम पूर्ण कार्य उदाहरण यहां सबसे उपयोगी होगा। –

संबंधित मुद्दे

 संबंधित मुद्दे