टिप्पणी में समझाया आप से पूछना:
इस बात की संभावना है कि नहीं है कोई अन्यथा फॉपेन कॉल और फ्लॉक कॉल के बीच फ़ाइल को संपादित करेगा? और फ्रेड
हाँ, नहीं, शायद। संक्षिप्त उत्तर: "हां" मानें और ध्यान से कार्य करें।
हां, उस पारंपरिक झुंड() - आधारित लॉकिंग में केवल सलाहकार है, इसलिए अन्य प्रक्रियाएं (या यहां तक कि एक ही प्रक्रिया) ताले की अवहेलना करने के लिए स्वतंत्र हैं। व्यवहार में, यह कोई समस्या नहीं है, क्योंकि फ़्लॉक() का उपयोग अच्छी तरह से व्यवहार किए गए क्लाइंट कोड द्वारा किया जाता है - जब तक आप LOCK_SH प्राप्त नहीं करते हैं तब तक आप तब तक नहीं पढ़ते हैं, और जब तक आप LOCK_EX - एप्लिकेशन पर प्राप्त नहीं करते हैं तब तक आप तब तक नहीं लिखते- विशिष्ट फाइलें
नहीं है, झुंड की है कि PHP के क्रियान्वयन में() अनिवार्य कुछ ऑपरेटिंग सिस्टम पर, documentation प्रति है, जो भी फाइल सिस्टम (जैसे, लिनक्स के तहत mand विकल्प के साथ के रूप में) से समर्थन की आवश्यकता हो सकती हो सकता है। इसलिए, अन्य प्रक्रियाएं उन ताले को नजरअंदाज नहीं कर सकती थीं।
शायद, इसमें PHP 5 में स्ट्रीम उपप्रणाली ऑपरेटिंग सिस्टम द्वारा प्रदान किए गए कुछ locking bookkeeping लागू करती है। उदाहरण के लिए, यह एक ही प्रक्रिया को रोक सकता है (लेकिन दूसरा नहीं) अपने अन्यथा सलाहकार ताले को अनदेखा करने से। व्यवहार might surprise कुछ। फिर भी, इस प्रकार की लॉकिंग असंबंधित प्रक्रियाओं के बीच अनिवार्य नहीं होगी।
पोर्टेबिलिटी के लिए, बस सबसे कमजोर अर्थशास्त्र (ऊपर "हां") मानें और अग्रिम में चुने गए एप्लिकेशन-विशिष्ट लॉकफाइल पर अच्छी तरह से व्यवहार किए गए कोड को झुकाएं।
यदि उस कैश का उपयोग केवल उस विशेष स्क्रिप्ट द्वारा किया जाता है, तो कुछ भी नहीं होगा। अगर कोई फ़ाइल से फटकार करेगा, कहें, खोल - निश्चित, बुरी चीजें घटित होंगी। – favoretti
हां, लेकिन ऐसा नहीं है कि LOCK_EX, उदाहरण के लिए, किसी भी तरह से "कुछ भी वापस नहीं करने के लिए 'फ्रेड' को मजबूर करता है, जैसा कि एक और टिप्पणी ने कहा था। – pilcrow
यदि आप PHP की साइट पर झुंड() पर टिप्पणियां पढ़ते हैं, तो यह वास्तव में करता है कि लॉकिंग सलाहकार है। ऐसा कहा जा रहा है कि, अनिवार्य लॉकिंग, उदाहरण के लिए, लिनक्स केवल फाइल सिस्टम के साथ काम करते समय हासिल किया जा सकता है जो स्पष्ट रूप से इसका समर्थन करता है और इस तरह से आरोहित होता है। – favoretti