تمرير البيانات المستعارة (Passing Around Borrowed Data)
من الأفضل تلخيص قواعد رست (Rust) فيما يتعلق بالمراجع في مايلي:
- رست (Rust) يسمح فقط بوجود مرجع واحد قابل للتغيير (mutable reference) أو عدة مراجع غير قابلة للتغيير (non-mutable references) ولكن ليس كلاهما.
- يجب ألا يعيش المرجع (reference) لفترة أطول من مالكه (owner).
لا يمثل هذا مشكلة عند تمرير المراجع إلى الدوال.
تفاصيل الذاكرة:
- القاعدة الأولى للمراجع تمنع سباقات البيانات (data races). ما هو سباق البيانات؟ يحدث سباق البيانات عندما تكون البيانات لديها إحتمالية لوجودها خارج النطاق الغير متزامن (sync) ونتيجة وجود أيضا كاتب آخر على هذه البيانات في نفس الوقت. يحدث هذا غالبًا في البرمجة متعددة الخيوط (multi-threaded programming).
- القاعدة الثانية للمراجع تمنع إساءة استخدام المراجع التي تشير إلى بيانات غير موجودة (تسمى المؤشرات المتدلية - dangling pointers - في لغة C).