कुछ साझा किए गए रेफरी के अपडेट करने और अपने जीवनकाल को प्रबंधित करने के लिए पृष्ठभूमि में लूप को थ्रेड बनाने के लिए मूर्खतापूर्ण क्लोजर तरीका क्या है? मैं अपने लिए future
का उपयोग कर पाता हूं, लेकिन यह एक हैक की तरह लगता है क्योंकि मैं कभी भी सार्थक मूल्य नहीं देता हूं। उदा .:पृष्ठभूमि धागे को स्पैन और प्रबंधित करने के लिए इडियोमैटिक क्लोजर तरीका
(future (loop [] (do
(Thread/sleep 100)
(dosync (...))
(recur))))
इसके अलावा, मैं पृष्ठभूमि प्रसंस्करण अब जरूरत है, जब future-cancel
यह करने के लिए सावधान रहने की जरूरत है। क्लोजर/स्विंग एप्लिकेशन में ऑर्केस्ट्रेट करने के तरीके पर कोई सुझाव अच्छा होगा। जैसे एक डमी JComponent
जो मेरे यूआई में जोड़ा गया है जो खिड़की बंद होने पर थ्रेड को मारने के लिए ज़िम्मेदार है, यह एक विचार हो सकता है।
कॉलिंग 'भविष्य cancel' या वास्तव में एक ही बात करने के लिए एक" कृपया रहने दें "झंडा राशि की स्थापना:
इस तरह कैसे रिच हिक्की चींटी कॉलोनी उदाहरण अनुप्रयोग में आवर्ती कार्य करता है। मुझे अभी भी यह सुनिश्चित करने की ज़रूरत है कि यह सही समय पर और मजबूत रूप से ऐसा होता है। (मुझे आरएआईआई याद आती है) – pauldoo
'डू' और 'जबकि' के बारे में आपके अन्य बिंदु बिल्कुल सही हैं। :) – pauldoo
मुझे नहीं लगता कि मैंने कहा था कि आपको कृपया रद्द करें झंडा सेट करना चाहिए। यदि आपका पृष्ठभूमि कार्य किया जाएगा, कहें, एक हजार पुनरावृत्तियों, या जब खिड़की बंद कर दी गई है, तो भविष्य उन चीजों को ट्रैक कर सकता है और खुद को बंद कर सकता है। कुछ चीजें अधिक जटिल होती हैं और अधिक विस्तृत प्रबंधन की आवश्यकता होती है, और उन लोगों के लिए आप भविष्य में रद्द भी कर सकते हैं। – amalloy