في هذا السيناريو، يتم تنفيذ سلسلة المحادثات، وتحديدًا HandlerThread، ضمن طريقة test()، و يتم تعديل القيمة داخل هذا الموضوع. يكمن التحدي في إعادة هذه القيمة المعدلة مرة أخرى إلى طريقة الاختبار () لمزيد من المعالجة أو الاستخدام.
تتمثل إحدى الطرق في إنشاء سلسلة رسائل تنفذ الواجهة القابلة للتشغيل، كما هو موضح في مقتطف التعليمات البرمجية المقدم. ضمن طريقة التشغيل () لهذا الموضوع، يمكنك تعيين القيمة حسب الحاجة. بالإضافة إلى ذلك، يمكنك إنشاء طريقة getValue() لاسترداد هذه القيمة خارجيًا.
لاسترداد القيمة، يمكنك تشغيل سلسلة الرسائل، والانتظار حتى تكتمل (من خلال join())، ثم الوصول إلى القيمة باستخدام طريقة getValue ().
public class CustomThread implements Runnable {
private volatile int value;
@Override
public void run() {
value = 2;
}
public int getValue() {
return value;
}
}
في الطريقة الرئيسية:
CustomThread thread = new CustomThread();
Thread t = new Thread(thread);
t.start();
t.join();
int retrievedValue = thread.getValue();
تذكر أن استخدام متغير متقلب مثل القيمة يضمن الرؤية والاتساق عبر سلاسل الرسائل.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3