2011-11-18 15 views
6

विंडोज़ में एक ऐसा एप्लिकेशन बनाना संभव है जिसे सेवा के रूप में स्थापित किया जा सके। इस प्रकार के एप्लिकेशन को विंडोज सेवा कहा जाता है। मैक ओएस एक्स पर सेवाओं के बराबर क्या होगा? वे कैसे कार्यान्वित किए जाते हैं और इसके बारे में कहां से शुरू करना है?मैक ओएस एक्स के लिए विंडोज सेवा कैसे बनाएं?

मैं स्वचालित रूप से कार्य निष्पादित करने के लिए एक सेवा बनाना चाहता हूं, और मांग पर इसे शुरू करना और रोकना चाहता हूं।

+0

मैक एक बिंदु पर एक संशोधित बीएसडी कर्नेल चला रहा था। क्या उनके पास एक क्रॉन-जैसी टूल है जिसका आप उपयोग कर सकते हैं? http: // benr75।कॉम/पेज/use_crontab_mac_os_x_unix_linux – Chris

+2

आप वास्तव में 'क्रॉन' का उपयोग कर सकते हैं लेकिन इसका उपयोग 'लॉन्च' के पक्ष में बहिष्कृत किया गया है। –

+0

ठीक है, मैंने लॉन्च किया है और सही समाधान प्रतीत होता है। thx – willyMon

उत्तर

9

आप launchd साथ दोस्त बनने के लिए की जरूरत है:

दूसरों

एक लिंक मदद करने के लिए आप आरंभ करने के ओएस एक्स पर गूगल क्रोम का स्वत: अद्यतन प्रणाली शामिल हैं।

  • ~/Library/LaunchAgents:: प्रति-उपयोगकर्ता एजेंटों उपयोगकर्ता द्वारा प्रदान की आप launchd विन्यास फाइल कि पांच स्थानों में से एक में रखा जाता है बनाने के लिए की जरूरत है।

  • /Library/LaunchAgents: व्यवस्थापक द्वारा प्रदान किए गए प्रति-उपयोगकर्ता एजेंट।

  • /Library/LaunchDaemons: व्यवस्थापक द्वारा प्रदत्त सिस्टम-व्यापी डिमन्स।

  • /System/Library/LaunchAgents: मैक ओएस एक्स द्वारा प्रदान की प्रति उपयोगकर्ता एजेंटों

  • /System/Library/LaunchDaemons: सिस्टम चौड़ा डेमॉन मैक ओएस एक्स द्वारा प्रदान की

एक डेमॉन एक है सिस्टम-व्यापी सेवा जिसमें सभी ग्राहकों के लिए एक उदाहरण है। एक एजेंट एक सेवा है जो प्रति उपयोगकर्ता आधार पर चलती है।

Configuration files एक property list.

वाक्य रचना सरल है के रूप में कर रहे हैं लेकिन यह गलत इसे पाने के लिए आसान है। में विकल्पों का एक अच्छा सारांश है यदि man page आपकी पसंद के अनुसार नहीं है।

अनिवार्य रूप से, आप जो करते हैं वह आपके वास्तविक कमांड लाइन उपकरण (आपकी सेवा) को कहीं और स्थापित करता है और फिर launchd कॉन्फ़िगरेशन प्लिस्ट बनाएं और इसे उपरोक्त स्थानों में से किसी एक में रखें। आप प्लिस्ट को कॉन्फ़िगर कर सकते हैं ताकि launchd लॉन्च या समय-समय पर या विभिन्न कार्यों (जैसे फ़ोल्डर बदलने की सामग्री) के जवाब में आपकी सेवा चलाता है।

एक अच्छा गहन लेख here है।

+0

/पुस्तकालय में आइटम (एक उपयोगकर्ता के ~/लाइब्रेरी के विपरीत) प्रत्येक उपयोगकर्ता के लिए लॉग इन करेगा, सही है? –

+0

हाँ, यह सही है। –

+0

क्या यह ऐप लॉन्च करने के जरिए स्टार्टअप पर रूट के रूप में चलाने का कोई तरीका है? –

4

आपको लॉन्च पर एक नज़र रखना चाहिए, आप इसके साथ बहुत सारी निफ्टी सामग्री कर सकते हैं। उदाहरण के लिए, भाप ने लॉन्च किया है कि जब भी भाप हटा दी जाती है, तो steam_delete सहायक उपकरण चलाएं। यह सहायक उपकरण आपको पूरी तरह से आपके सिस्टम से भाप को अनइंस्टॉल करने में मदद करता है। Devdaily launchd examples

+0

उत्तर के लिए धन्यवाद। – willyMon