سؤال

على UNIX, أنا يمكن ، على سبيل المثال ، يقول OS أن التعيين سوف تكون هناك حاجة في المستقبل مع posix_fadvise(POSIX_FADV_WILLNEED).فإنه سيتم ثم قراءة مسبقة البيانات إذا كان يشعر بذلك.

كيفية معرفة الوصول تنوي ويندوز ؟

هل كانت مفيدة؟

المحلول

في الواقع, كما اندرس معظمها اقترح ، لا يوجد مثل هذا الأسلوب في إدارة الذاكرة والوظائف المتاحة في ويندوز 7 في وقت سابق.

2 طرق مختلفة موجودة أن تفعل شيئا من هذا القبيل :

  • قراءة البيانات بشكل غير متزامن مع ReadFileEx.البيانات قد لا تكون في ملف ذاكرة التخزين المؤقت عند الحاجة في وقت لاحق.
  • فتح الملف مع تدفق تلميح مع FILE_FLAG_SEQUENTIAL_SCAN سمة من CreateFile.Readahead ثم ربما يكون ذلك تلقائيا.

نصائح أخرى

وبدءا من ويندوز 8، وهناك في PrefetchVirtualMemory وظيفة لهذا الغرض.

ويمكنك تمرير FILE_FLAG_RANDOM_ACCESS أو FILE_FLAG_SEQUENTIAL_SCAN إلى CreateFile ()

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top