لماذا نحتاج IDisposable؟
لماذا نحتاج IDisposable؟

فيديو: لماذا نحتاج IDisposable؟

فيديو: لماذا نحتاج IDisposable؟
فيديو: IDisposable Exposed 2024, شهر نوفمبر
Anonim

غير قابل للصرف لن يمسح أي شيء أو يدمر الأشياء. استدعاء Dispose () لا يفعل شيئًا إذا كانت هذه الوظيفة لا تفعل شيئًا. استخدام غير قابل للصرف هو نمط. تمنع المراجع المُدارة للكائنات الأخرى تجميع العناصر بواسطة مُجمع البيانات المهملة.

وبالمثل ، قد تسأل ، لماذا يتم استخدام واجهة IDisposable؟

غير قابل للصرف في كثير من الأحيان تستخدم لاستغلال بيان الاستخدام والاستفادة من طريقة سهلة للقيام بالتنظيف الحتمي للكائنات المدارة. الغرض من نمط التخلص هو توفير آلية لتنظيف كل من الموارد المُدارة وغير المُدارة ويعتمد وقت حدوث ذلك على كيفية استدعاء طريقة التخلص.

علاوة على ذلك ، ما هو IDisposable؟ غير قابل للصرف هي واجهة تحتوي على طريقة واحدة ، Dispose () ، لتحرير الموارد غير المُدارة ، مثل الملفات والتدفقات واتصالات قاعدة البيانات وما إلى ذلك.

بالنظر إلى هذا ، متى يجب علي استخدام IDisposable؟

في الفصل ، أنت يجب أن تنفذ IDisposable والكتابة فوق طريقة التخلص للسماح لك بالتحكم في وقت تحرير الذاكرة. إذا لم يكن الأمر كذلك ، يتم ترك هذه المسؤولية لمجمع البيانات المهملة لتحرير الذاكرة عند الانتهاء من الكائن الذي يحتوي على الموارد غير المُدارة.

لماذا نحتاج إلى التخلص في C #؟

يوصى دائمًا باستخدامه تخلص طريقة لتنظيف الموارد غير المدارة. لكن الموارد غير المُدارة (على سبيل المثال ، إنشاء كائنات Windows API ، والملف ، وكائنات اتصال قاعدة البيانات ، وكائنات COM ، وما إلى ذلك) خارج نطاق. الإطار الصافي نحن علينا تنظيف مواردنا بشكل صريح. لهذه الأنواع من الكائنات ،.

موصى به: