के अलावा किसी फ़ाइल की प्रतिलिपि बनाने का कोई तेज़ तरीका है, उसी ड्राइव पर फ़ोल्डर ए से फ़ोल्डर बी तक 1.6 जीबी फ़ाइल के लिए File.Copy(src, dest);
करने में लगभग 2 मिनट लगते हैं। क्या सी #/.NET कोड (डब्ल्यू/ओ हार्डवेयर) में ऐसा करने का कोई तेज़ तरीका है - स्ट्रीम, थ्रेडिंग इत्यादि के साथ कुछ?क्या फ़ाइल.कॉपी
क्या एक फाइलस्ट्रीम तेज होगा? एक वर्ग के बारे में जो थ्रेडपूल का उपयोग करके फ़ाइल को जोड़ता है, और बाइट्स की एक श्रृंखला पढ़ता है/बाइट्स की एक श्रृंखला लिखता है [जो फ़ाइल को दूषित करने के लिए एक शानदार तरीका लगता है, लेकिन अखंडता प्राथमिकता 1 नहीं है, इसकी गति :-) ]
मैंने खोज की है लेकिन हर कोई फ़ाइल का उपयोग करता है। कॉपी, लेकिन यह धीमा है (विंडोज कॉपी के रूप में धीमा) - मैं किसी तृतीय पक्ष टूल का उपयोग नहीं करना चाहूंगा। ,
> C# : 2.15m
> Windows Explorer: 2.53m
> TeraCopy: 2.26m
> FastCopy: 2.24m
ठीक है उन का औसत नहीं हैं और मैं जानता हूँ कि वे बाद में रन पर थोड़ा बदल सकते हैं, लेकिन:
कॉपी समय की तुलना:
यहाँ कुछ प्रश्नों के कुछ जवाब हैं मैंने वास्तव में सोचा था कि फ़ाइल की प्रतिलिपि बनाने का एक तेज़ तरीका होगा क्योंकि मुझे लगता है कि विंडोज अतिरिक्त सुरक्षा और अखंडता जांच कर रहा था :-(
मुझे अभी भी उम्मीद है मुझे अच्छा जवाब (जैसे 'अगर आप मीटर बफ़र और सुरक्षा n बंद करूं ओह हां, 1.5GB पर फ़ाइलें एक्स तेजी से हो जाएगा') - ठीक है, मैं सिर्फ इस बिंदु पर बधाई देने के लिए कर रहा हूँ।
मुझे लगता है कि आपको विंडोज़ बॉक्स पर, विंडोज़ से तेज, फ़ाइल कॉपी करने के लिए कड़ी मेहनत की जाएगी। –
मुझे लगता है कि आपका ड्राइव पारंपरिक प्लेटर-आधारित ड्राइव है। यदि ऐसा है, तो फ़ाइल को तोड़ने की संभावना समय की वजह से धीमी चीजें घट जाएगी। – Greg
* एक ही * ड्राइव पर 1.6 जीबी को नए स्थान पर कॉपी करना एक ऐसी गतिविधि नहीं है जो हार्ड ड्राइव के लिए बहुत अच्छी है। सिमुलेटिक पठन और लिखने का समर्थन करने के लिए इसे पूरे स्थान पर कूदना होगा। –