जो मुझे पता है और शोध किया गया है, synchronized
जावा में कीवर्ड बहु-थ्रेडेड एक्सेस को संभालने के लिए विधि या कोड ब्लॉक कथन को सिंक्रनाइज़ करने देता है। यदि मैं बहु-थ्रेडेड वातावरण पर लेखन उद्देश्यों के लिए फ़ाइल लॉक करना चाहता हूं, तो
को सर्वोत्तम परिणाम प्राप्त करने के लिए Java NIO package में कक्षाओं का उपयोग करना चाहिए। कल, मैं फ़ाइल I/O संचालन के लिए एक साझा सर्वलेट को संभालने के बारे में एक प्रश्न के साथ आया हूं, और बलुससी टिप्पणियां समाधान के साथ मदद करने के लिए अच्छी हैं, लेकिन this answer में कोड मुझे भ्रमित करता है। मैं समुदाय से नहीं पूछ रहा हूं "उस पोस्ट को जलाएं" या "चलो उसे नीचे छोड़ दें" (ध्यान दें: मैंने इसे या कुछ भी कम नहीं किया है, और मेरे पास जवाब के खिलाफ कुछ भी नहीं है), अगर कोड खंड टूट सकता है तो मैं स्पष्टीकरण मांग रहा हूं एक अच्छा अभ्यास पर विचार किया जाफ़ाइल ऑब्जेक्ट को सिंक्रनाइज़ करें
private static File theFile = new File("theonetoopen.txt");
private void someImportantIOMethod(Object stuff){
/*
This is the line that confuses me. You can use any object as a lock, but
is good to use a File object for this purpose?
*/
synchronized(theFile) {
//Your file output writing code here.
}
}
+1 क्योंकि अब आप 4000 से अधिक हैं। – Hassan
@ हसन जो भी हो और जो भी प्रतिष्ठा है, तब तक ऐसा न करें जब तक आपको लगता है कि प्रश्न/उत्तर सहायक नहीं है। –
@ नंदकुमार मुझे यह प्रश्न पसंद है, मैंने सोचा कि यह मनोरंजक था। – Hassan