/ / सीधे फ़ाइल में NSTask का आउटपुट पाइप करना? - कोको, पाइप, nstask

एनएसटीस्क के आउटपुट को सीधे फाइल में पिप करना? कोको, पाइप, nstask

एक फ़ाइल में सीधे NSTask आउटपुट के लिए सबसे अच्छा तरीका क्या है? मैं संभव के रूप में स्मृति में कुछ बफ़र्स के माध्यम से जाना चाहता हूँ।

उत्तर:

जवाब के लिए 2 № 1

लॉन्च करने से पहले NSTask मानक आउटपुट और मानक त्रुटि सेट करें (setStandardOutput:, setStandardError:) एक को NSFileHandle आउटपुट फ़ाइल के लिए (या फ़ाइलें यदि आप प्रत्येक आउटपुट के लिए एक अलग चाहते हैं)।

एक NSFileHandle अंतर्निहित OS फ़ाइल डिस्क्रिप्टर और के लिए सिर्फ एक आवरण है NSTask इसे निर्दिष्ट आउटपुट से जोड़ने के लिए उचित कार्य करेंगे (यानी यह सबसे अधिक संभावना है कि आप एक डुबकी (2)) करेंगे। किसी भी मध्यवर्ती स्मृति बफ़र्स को पेश नहीं किया जाना चाहिए।

एक बार NSTask शुरू कर दिया है आप (और चाहिए) बंद करें NSFileHandle अपने कोड में ।