मान लीजिए मेरे पास दो संसाधन हैं, नाम 0
और 1
, जो केवल विशेष रूप से एक्सेस किए जा सकते हैं।
क्या "समानांतर प्रोसेसर" के "इंडेक्स" को पुनर्प्राप्त करने का कोई तरीका है जो xargs
इसे मुक्त पारस्परिक बहिष्कार सेवा के रूप में उपयोग करने के लिए लॉन्च करता है? उदाहरण के लिए, निम्नलिखित समानांतर गणना पर विचार करें:
$ echo {1..8} | xargs -d " " -P 2 -I {} echo "consuming task {}"
consuming task 1
consuming task 2
consuming task 3
consuming task 4
consuming task 5
consuming task 6
consuming task 7
consuming task 8
मेरा सवाल यह है कि क्या कोई जादू शब्द मौजूद है, कहते हैं index
, जहां आउटपुट जैसा दिखेगा
$ echo {1..8} | xargs -d " " -P 2 -I {} echo "consuming task {} with resource index"
consuming task 1 with resource 0
consuming task 2 with resource 1
consuming task 3 with resource 1
consuming task 4 with resource 1
consuming task 5 with resource 0
consuming task 6 with resource 1
consuming task 7 with resource 0
consuming task 8 with resource 0
जहाँ एकमात्र गारंटी यह है कि संसाधन 0
और उसी का उपयोग करते हुए केवल एक ही प्रक्रिया में कभी होता है 1
। मूल रूप से, मैं इस इंडेक्स को चाइल्ड प्रोसेस के लिए कम्यूनिकेट करना चाहूंगा जो केवल उस संसाधन का उपयोग करने के लिए नियम का सम्मान करेगा।
बेशक, इसे दो से अधिक संसाधनों तक विस्तारित करना बेहतर होगा। डॉक्स का निरीक्षण, xargs
शायद ऐसा नहीं कर सकता। क्या कोई न्यूनतम समतुल्य समाधान है? नकली तालों के रूप में फाइलों की सफाई / उपयोग करना बेहतर नहीं है।