2012-08-30 7 views
8

मेरे पास रननेबल का एक समूह है जो मैं कई धागे में चलाना चाहता हूं और कुछ दूसरों के शुरू होने से पहले पूरा होने पर निर्भर करते हैं। मैंने ऐसा करने के लिए एक सरल उपयोगिता लिखी, लेकिन क्या ऐसी कोई पुस्तकालय है जो पहले से ही इस क्षमता को प्रदान करती है?क्या निर्भर रननेबल शेड्यूल करने के लिए जावा लाइब्रेरी है (निर्भरता डीएजी में दी गई है)?

+0

प्रक्रिया इंजन जैसे [टैग: एक्टिविटी] या [टैग: जेबीपीएम] आपके लिए एक ओवरकिल है? –

+0

जावा 3 डी में ऐसा कुछ है लेकिन मुझे नहीं पता कि –

+0

@ टोमाज़, पॉइंटर्स के लिए धन्यवाद। हाँ, वे शायद अधिकतर हैं। – jonderry

उत्तर

2

आप धागे

+0

उपयोगी उत्तर, हालांकि यह निर्भर कार्यों को चलाने के लिए काफी सरल एपीआई प्रदान नहीं करता है। – jonderry

+0

यह एक साधारण पर्याप्त समस्या की तरह लगता है जो आपके सिस्टम को घुमाएगा बहुत बुरा नहीं होगा (और कोई अन्य लाइब्रेरी ओवरकिल होने जा रही है)। मैं इसे एक वर्ग के रूप में लागू करता हूं जो "नोड" के रूप में कार्य करता है - यह एक रननेबल को लपेटता है, और यह इसकी निर्भरताओं और आश्रितों को जानता है, और समन्वय के लिए 'काउंटरडाउनलैच' भी है। फिर इनमें से एक समूह को एक गुच्छा लेने के लिए, उन पर कुल आदेश की गणना करें, और उन्हें उस आदेश में निष्पादक को खिलाएं (डेडलॉक को रोकने के लिए)। –

1

"कुछ पूरा करने के लिए दूसरों पर निर्भर इससे पहले कि वे शुरू" की गतिविधियों का समन्वय करने के एक CountDownLatch उपयोग कर सकते हैं।

मुझे लगता है कि इसका मतलब है कि कुछ कार्य इनपुट कार्यों के रूप में अन्य कार्यों के परिणामों का उपयोग करते हैं। यदि ऐसा है, तो "जावा डेटाफ्लो" या "जावा वर्कफ़्लो" खोजें।

यदि प्रत्येक कार्य के लिए इनपुट तर्कों को एक अनुक्रमिक कतार के साथ प्रदर्शित किया जा सकता है, तो इस विशेष प्रकार के डेटाफ्लो को "अभिनेता मॉडल" के रूप में जाना जाता है, इसलिए "जावा अभिनेता लाइब्रेरी या फ्रेमवर्क" की खोज करें।

विशेष रूप से, मेरा df4j का एक ओपनसोर्स प्रोजेक्ट डेटाफ्लो और अभिनेता शैलियों दोनों का समर्थन करता है।

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

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