অ্যাক্সেস করতে এবং দক্ষতার সাথে বিপুল পরিমাণে মেমরির বরাদ্দ করতে এটি ব্যবহার করুন যেমন আপনার নিজস্ব ভক্সেল ইঞ্জিনে! (অর্থাত্ মাইনক্রাফ্ট-শৈলীর খেলা))
আমার অভিজ্ঞতায়, জেভিএম আপনার সত্যিকারের প্রয়োজনের স্থানে প্রায়শই সীমানা-চেকিং অপসারণ করতে অক্ষম থাকে। উদাহরণস্বরূপ, যদি আপনি একটি বড় অ্যারে দিয়ে পুনরাবৃত্তি করেন তবে লুপটিতে একটি অ-ভার্চুয়াল * পদ্ধতি কলের নীচে প্রকৃত মেমরি অ্যাক্সেসটি টাক করা হয়, জেভিএম এখনও একবার আগে না হয়ে প্রতিটি অ্যারে অ্যাক্সেসের সাথে বাউন্ড চেক করতে পারে still লুপ সুতরাং, সম্ভাব্য আকারে বড় পারফরম্যান্স লাভের জন্য, আপনি কোনও পদ্ধতি ব্যবহার করে লুপের অভ্যন্তরে জেভিএমের সীমানা-চেকিংকে সরিয়ে ফেলতে পারেন যা সূর্য.মিস্ক ব্যবহার করে Uঅন্যাসেফটি সরাসরি স্মৃতিতে অ্যাক্সেস করতে সক্ষম হন, সঠিক জায়গাগুলিতে নিজেকে কোনও সীমানা-পরীক্ষা করা নিশ্চিত করে নিন। (আপনি কিছু স্তরে চেক করতে চলেছেন, তাই না?)
* অ-ভার্চুয়াল দ্বারা, আমি বলতে চাইছি যে জেভিএমকে আপনার বিশেষ পদ্ধতিটি যাই হোক না কেন গতিশীলভাবে সমাধান করতে হবে না, কারণ আপনি সঠিকভাবে গ্যারান্টি দিয়ে গেছেন যে শ্রেণি / পদ্ধতি / উদাহরণটি স্থির / চূড়ান্ত / কী-আপনার-এর সংমিশ্রণ।
আমার বাড়ির বিকাশযুক্ত ভোক্সেল ইঞ্জিনের জন্য, এর ফলে খণ্ড জেনারেশন এবং সিরিয়ালাইজেশন চলাকালীন নাটকীয় পারফরম্যান্স লাভ করেছে (আমি যে জায়গাগুলিতে আমি একবারে পুরো অ্যারেতে পড়ছিলাম / লিখছিলাম)। ফলাফলগুলি পৃথক হতে পারে, তবে যদি সীমা-নির্মূলের অভাব আপনার সমস্যা হয় তবে এটি এটিকে ঠিক করে দেবে।
এটির সাথে কয়েকটি সম্ভাব্য বড় সমস্যা রয়েছে: বিশেষত, আপনি যখন আপনার ইন্টারফেসের ক্লায়েন্টদের সীমাবদ্ধতা পরীক্ষা না করে মেমরি অ্যাক্সেস করার ক্ষমতা সরবরাহ করেন, তারা সম্ভবত এটির অপব্যবহার করবে। (ভুলে যাবেন না যে হ্যাকাররাও আপনার ইন্টারফেসের ক্লায়েন্ট হতে পারে ... বিশেষত জাভাতে লেখা ভোক্সেল ইঞ্জিনের ক্ষেত্রে)) সুতরাং, আপনার হয় নিজের ইন্টারফেসটি এমনভাবে ডিজাইন করা উচিত যাতে স্মৃতি অ্যাক্সেসের অপব্যবহার করা যায় না, বা আপনি আগে এটি আগের পারেন ব্যবহারকারী-ডেটা যাচাই করতে অত্যন্ত সতর্কতা অবলম্বন করা উচিত কি কখনো আপনার বিপজ্জনক ইন্টারফেসের সাথে মিশ্রিত। হ্যাকার যাচাই না করা স্মৃতি অ্যাক্সেসের মাধ্যমে হ্যাকার যে বিপর্যয়কর জিনিসগুলি করতে পারে তা বিবেচনা করে উভয় পন্থা গ্রহণ করা ভাল।