गुवा 10+ में, Google ने Files.deleteDirectoryContents() को हटा दिया। जावाडॉक कहता हैफ़ाइलों को क्यों हटाया जाता है .deleteDirectoryContents() गुवा में बहिष्कृत?
बहिष्कृत। यह विधि खराब सिम्लिंक पहचान और दौड़ स्थितियों से ग्रस्त है। इस कार्यक्षमता को केवल द्वारा समर्थित ऑपरेटिंग सिस्टम कमांड जैसे आरएम-आरएफ या डेल/एस के रूप में उपयुक्त रूप से समर्थित किया जा सकता है। इस विधि अमरूद में अमरूद से हटाया जा करने के लिए अनुसूचित रिलीज 11,0
मैं क्यों वहाँ एक रेस स्थिति है पर उलझन में हूँ। मुझे लगता है कि यह विधि वास्तव में उपयोगी है और ऑपरेटिंग सिस्टम को एक खराब समाधान के लिए खोलने लगती है। लेखक क्या साझा कर सकते हैं इस निर्णय को क्यों बनाया?
अधिक स्पष्ट होने के लिए, मुझे लगता है कि दौड़ की स्थिति समस्या होने पर एक बड़ी बग नहीं है। 'अरेरेस्टिस्ट' जैसी कई libs थ्रेड सुरक्षित नहीं हैं या दौड़ की स्थिति नहीं हैं। यहां तक कि 'File.remove' भी एक ही समस्या है। लेकिन वे सभी दस्तावेज हैं। तो मैं एक उत्तर सुनने की उम्मीद कर रहा था इसके अलावा दस्तावेज पहले से ही कहता है कि उन्होंने इसे बहिष्कृत करने का फैसला क्यों किया। –
इस दौड़-स्थिति और सामान्य गैर-थ्रेड-सुरक्षित कक्षाओं के बीच का अंतर यह है कि इसके लिए कोई "ठीक" नहीं है। इसके विपरीत, आप लॉक ऑब्जेक्ट पर सिंक्रनाइज़ करके गैर थ्रेड-सुरक्षित कक्षाओं के साथ जावा थ्रेड-सुरक्षा समस्याओं को हल कर सकते हैं। एक तरीका जो बस ऐसा नहीं कर सकता जो लोग इसे करने की अपेक्षा करते हैं वह एक बुरी विधि है। –
यह एक अच्छा मुद्दा है। धन्यवाद। –