এখানে সম্প্রতি এমন কিছু প্রশ্ন রয়েছে যা আমি সম্প্রতি সাক্ষাত্কারীদের জিজ্ঞাসা করেছি যারা বলে যে তারা জাভা সম্মতি জানে:
- "মেমোরি ভিজিবিলিটি" এর বিপত্তি ব্যাখ্যা করুন - জেভিএম যেভাবে চলকগুলিতে কোনও মনিটর দ্বারা সুরক্ষিত এবং ঘোষিত নয় এমন কিছু ক্রিয়াকলাপগুলিকে পুনরায় অর্ডার করতে পারে
volatile, যেমন একটি থ্রেড অন্য থ্রেডের পরিবর্তনগুলি দেখতে না পারে। সাধারণত আমি এই বিপদটি উপস্থিত রয়েছে এমন কোডটি দেখিয়ে এটির জিজ্ঞাসা করি (উদাহরণস্বরূপ,NoVisibilityগোয়েটস এট আল দ্বারা "জাভা কনকুরেন্সির অনুশীলন" থেকে তালিকাভুক্ত ৩.১ এর উদাহরণ) এবং কী ভুল তা জিজ্ঞাসা করে। - কীভাবে
volatileকেবল প্রকৃত ভেরিয়েবল ঘোষিতvolatileনয় তা পরিবর্তনশীল পরিবর্তনের আগে কোনও থ্রেড দ্বারা তৈরি ভেরিয়েবলের কোনও পরিবর্তনকে কীভাবে প্রভাবিত করে তা ব্যাখ্যা করুনvolatile। - আপনি
volatileপরিবর্তে ব্যবহার করতে পারেন কেনsynchronized? wait()এবং এর সাথে একটি শর্ত পরিবর্তনশীল প্রয়োগ করুনnotifyAll()। আপনার কেন ব্যবহার করা উচিত তা ব্যাখ্যা করুনnotifyAll()। শর্ত ভেরিয়েবলটি কেন একটিwhileলুপ দিয়ে পরীক্ষা করা উচিত তা ব্যাখ্যা কর ।
আমার প্রশ্ন হ'ল - জাভা সমন্ধি জানেন এমন কাউকে জিজ্ঞাসা করা কি এগুলি উপযুক্ত বা খুব উন্নত?
এবং যখন আমরা এটি করছি, আপনি কি মনে করেন যে জাভা সম্মতিতে কাজ করা কারও জাভা আবর্জনা সংগ্রহের একটি উচ্চ-গড় জ্ঞান থাকা উচিত?
notifyAll()"ওএস শিডিয়ুলারের কাজ করতে বিশ্বাস করে না, তাই আমি ব্যবহার করি notify()"