2011-03-24 6 views
10

processIdentifier पर टिप्पणी से NSRunningApplication.h में "सभी अनुप्रयोगों एक पीआईडी ​​है":NSRunningApplication.h:

नहीं सभी आवेदनों एक पीआईडी ​​की है।

हुह?

मैं इसे NSRunningApplication के विशिष्ट मामले में एक समाप्त प्रक्रिया (runningProcess.terminated == YES) का प्रतिनिधित्व करने वाले विशिष्ट मामले में देख सकता हूं, लेकिन मैं एक चल रहे एप्लिकेशन के उदाहरण के बारे में नहीं सोच सकता हूं जिसमें कोई प्रक्रिया आईडी नहीं है। यह यूनिक्स 101 है।

दस्तावेज़ीकरण बग या क्या मुझे कुछ याद आ रही है?

+1

इसके अलावा, दस्तावेज़ीकरण से: "प्रक्रियाओं की तुलना करने के लिए इस पर भरोसा न करें, इसके बजाय 'isEqual:'। " –

उत्तर

8

यह एक बचाव है। एक "चल रहा एप्लिकेशन" ऐसा कुछ है जिसे उपयोगकर्ता एप्लिकेशन के रूप में सोचता है। Cmd-tab स्विचर आदि में दिखाया गया है, यह आवश्यक रूप से किसी प्रक्रिया के अनुरूप नहीं होना चाहिए। क्लासिक वातावरण में, एक ही यूनिक्स प्रक्रिया, क्लासिक द्वारा एकाधिक अनुप्रयोग होस्ट किए गए थे। इस स्थिति में NSRunning अनुप्रयोग प्रत्येक "एप्लिकेशन" के लिए -1 लौटाएगा।

जो लोग लंबे समय से वहां रहे थे, वे काफी रोचक हैक देख चुके थे, जिन्हें उन्होंने सोचा था कि यह परिभाषित करने के लिए एक महत्वपूर्ण बात थी।

+0

का उपयोग करके NSRunning अनुप्रयोग उदाहरणों की तुलना करें। मैंने कभी इस तरह के कुछ के लिए उपयोग किए जाने वाले शब्द" हेज "को नहीं सुना है (लेकिन मैं मुझे लगता है कि मैं संदर्भ से अर्थ grok कर सकते हैं)। क्या आप इसे समझा सकते हैं, कृपया? –

+1

मुझे लगता है कि यह मुहावरे से आता है "अपने दांव हेजिंग"। इसका मतलब है कि वे अपने सभी अड्डों को कवर करने की कोशिश कर रहे हैं (जो अभी तक एक और मुहावरे है - ये अंग्रेजी!)। –

+0

चल रहे एप्लिकेशन सूची सभी जीयूआई ऐप्स नहीं हैं। कुछ फ़ेसलेस ऐप्स (LSUIElement = 1) भी दिखाई देते हैं: AppleSpell सेवा, loginwindow, और उपयोगकर्ता के बीच डिमन्स दूसरों के बीच। –

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

  • कोई संबंधित समस्या नहीं^_^