المتغير الساكن (static) هو مورد ذاكرة (memory resource) تم إنشاؤه في وقت الترجمة (compile-time)، وهو موجود من بدء البرنامج حتى نهايته. ويجب حديد أنواعه بشكل صريح.
العمر الساكن (static) هو مورد ذاكرة (memory resource) يبقى حتى نهاية البرنامج. ولاحظ أنه بموجب هذا التعريف فإنه يمكن إنشاء بعض الموارد ساكنة العمر (static lifetime) في وقت التشغيل (runtime).
الموارد ذات الأعمار الساكنة لها محدد عمر خاص وهو 'static
.
الموارد ذات الأعمار الساكنة 'static
لا تسقط (drop) أبدا.
إذا كانت الموارد ذات الأعمار الساكنة تحتوي على مراجع (references)، فيجب أن تكون جميع المراجع ساكنة 'static
(ي شيء غير ذلك لن يقى طويلا بما فيه الكفاية).
تفاصيل الذاكرة:
يعد تعديل المتغيرات الساكنة (static variables) أمرًا خطيرًا بطبيعته لأنه يمكن الوصول من الجميع (globally accessable) ويقرأها أي شخص وهذا يمكن أن يحدث سباق بيانات (data race). سنتحدث عن تحديات البيانات المتاحة للجميع (global data) لاحقًا.
يسمح رست (Rust) باستخدام الكتل الغير آمنة عن طريق unsafe { ... }
لتنفيذ بعض العمليات التي لا يستطيع المترجم (compiler) تقديم ضمانات للذاكرة بشأنها.لا ينبغي لـ R̸͉̟͈͔̄͛̾̇͜U̶͓͖͋̅Ṡ̴͉͇̃̉̀T̵̻̻͔̟͉́͆Ơ̷̥̟̳̓͝N̶̨̼̹̲͛Ö̵̝͉̖̏̾̔M̶̡̠̺̠̐͜Î̷̛͓̣̃̐̏C̸̥̤̭̏͛̎͜O̶̧͚͖͔̊͗̇͠N̸͇̰̏̏̽̃ التحدث عن هذا الموضوع بشكل عرضي.