AtomicInteger في البرمجة المتزامنة
AtomicInteger هي فئة Java التي تتيح الوصول المتزامن إلى قيمة عدد صحيح أساسي. يعد فهم التطبيقات العملية لـ AtomicInteger أمرًا بالغ الأهمية لتحسين التزامن في البيئات متعددة الخيوط.
حالات الاستخدام النموذجية
يخدم AtomicInteger غرضين أساسيين:
يوفر "Java Concurrency In Practice" الخاص ببراين جويتز مثالاً على استخدام AtomicInteger للرقم العشوائي غير المحظور الجيل:
الطبقة العامة AtomicPseudoRandom تمتد PseudoRandom { بذرة AtomicInteger الخاصة؛ ... كثافة العمليات العامة التالية(int n) { بينما (صحيح) { int s =seed.get(); int nextSeed = CalculatorNext(s); إذا (seed.compareAndSet(s, nextSeed)) { ... } } }
public class AtomicPseudoRandom extends PseudoRandom { private AtomicInteger seed; ... public int nextInt(int n) { while (true) { int s = seed.get(); int nextSeed = calculateNext(s); if (seed.compareAndSet(s, nextSeed)) { ... } } } }
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3