पर सिंक्रनाइज़ JSON-जावा पुस्तकालय (org.json.JSONArray) में मैं एक विधि-स्थानीय चर के चारों ओर एक synchronized
ब्लॉक के साथ इस कोड स्निपेटआवश्यकता स्थानीय चर
public String toString(int indentFactor) throws JSONException {
StringWriter sw = new StringWriter();
synchronized (sw.getBuffer()) {
return this.write(sw, indentFactor, 0).toString();
}
}
मैं तुल्यकालन के लिए आवश्यकता समझ में नहीं आता पाया है यहां, केवल दी गई विधि के लिए स्थानीय है (और, बफर पर सिंक्रनाइज़ेशन क्यों है)। सिंक्रनाइज़ेशन वास्तव में यहां जरूरी है, और यदि, क्यों?
यह अनावश्यक है। डिफ़ॉल्ट कन्स्ट्रक्टर के साथ, बफर एक नई तत्काल वस्तु है। 'buf = new StringBuffer(); 'कन्स्ट्रक्टर के अंदर। –
ध्यान दें कि org.json लाइब्रेरी का लेखक एक जावास्क्रिप्ट प्रोग्रामर है, जावा प्रोग्रामर नहीं, और यह तथ्य पूरे कोड में प्रदर्शित होता है। गंभीर JSON प्रसंस्करण के लिए, Google की Gson लाइब्रेरी का उपयोग करने पर विचार करें। –