Guava লাইব্রেরির Stopwatch ক্লাসটি একটি সহজ এবং কার্যকরী টুল যা কোডের পারফরম্যান্স পরিমাপ করতে ব্যবহৃত হয়। এটি সাধারণত কোডের নির্দিষ্ট অংশের এক্সিকিউশন সময় ট্র্যাক করার জন্য ব্যবহার করা হয়। Stopwatch ক্লাসটি ব্যবহারকারীদের কার্যকরীভাবে সময় গণনা করার সুযোগ দেয়, যেমন কোডের কোনও এক অংশ চালানোর সময়ের পরিমাপ করতে।
StopWatch Class এর ধারণা
Stopwatch একটি টাইমার বা স্টপওয়াচ হিসেবে কাজ করে, যা নির্দিষ্ট সময়কালের জন্য কার্যক্রমের সময় রেকর্ড করে। আপনি যখন কোডের নির্দিষ্ট অংশের এক্সিকিউশন সময় পরিমাপ করতে চান, তখন Stopwatch ক্লাস ব্যবহার করে খুব সহজেই এটি করা যায়।
প্রধান মেথডসমূহ
Start(): টাইমার শুরু করতে ব্যবহৃত হয়।Stop(): টাইমার থামাতে ব্যবহৃত হয়।reset(): টাইমার রিসেট করতে ব্যবহৃত হয়।elapsed(): মোট সময় পরিমাপ করতে ব্যবহৃত হয় (প্রতিবার স্টপওয়াচ চালানোর পর এটি ব্যবহৃত হতে পারে)।time(): কোড ব্লকের জন্য মোট সময় পরিমাপ করতে ব্যবহৃত হয় এবং এটি সাধারণত মাইক্রোসেকেন্ড বা মিলিসেকেন্ড হিসেবে সময় ফিরিয়ে দেয়।
StopWatch এর ব্যবহার
Stopwatch সাধারণত কোডের কর্মক্ষমতা বিশ্লেষণের জন্য ব্যবহার করা হয়। উদাহরণস্বরূপ, কোনও লুপ বা কম্পিউটেশনাল কাজের জন্য সময় পরিমাপ করা।
উদাহরণ:
import com.google.common.base.Stopwatch;
import java.util.concurrent.TimeUnit;
public class StopwatchExample {
public static void main(String[] args) throws InterruptedException {
// Stopwatch তৈরি করা
Stopwatch stopwatch = Stopwatch.createStarted();
// কিছু সময়ের জন্য থ্রেড ঘুমানোর উদাহরণ
TimeUnit.SECONDS.sleep(2);
// টাইমার থামানো
stopwatch.stop();
// মোট সময় দেখানো
System.out.println("Elapsed time: " + stopwatch.elapsed(TimeUnit.MILLISECONDS) + " milliseconds");
// টাইমার রিসেট করা
stopwatch.reset();
stopwatch.start();
// আবার কিছু সময় ঘুমানো
TimeUnit.SECONDS.sleep(1);
// দ্বিতীয় বার মোট সময় দেখানো
stopwatch.stop();
System.out.println("Elapsed time after reset: " + stopwatch.elapsed(TimeUnit.SECONDS) + " seconds");
}
}
উদাহরণ ব্যাখ্যা:
Stopwatch.createStarted(): এটি একটি নতুন Stopwatch তৈরি করে এবং তা স্বয়ংক্রিয়ভাবে শুরু হয়।stopwatch.stop(): এটি টাইমার থামানোর জন্য ব্যবহৃত হয়।stopwatch.elapsed(TimeUnit.MILLISECONDS): এই মেথডটি স্টপওয়াচের মোট সময় পরিমাপ করে, এবং আমরা মিলিসেকেন্ডে এটি পরিমাপ করি।stopwatch.reset(): এটি টাইমারকে রিসেট করে, যা আবার নতুনভাবে শুরু করতে দেয়।
এই উদাহরণে, প্রথমে আমরা একটি দুই সেকেন্ডের বিলম্ব (sleep) পরিমাপ করি এবং পরে সেটি রিসেট করে আরও এক সেকেন্ডের বিলম্ব পরিমাপ করি।
StopWatch এর সুবিধা
- সহজ এবং দ্রুত ব্যবহারের উপযোগী: কোডের সময় পরিমাপ করা খুবই সহজ, এবং এটি আপনাকে অন্যান্য বিল্ট-ইন মেথডের চেয়ে দ্রুত ফলাফল দেয়।
- পারফরম্যান্স টেস্টিং: কোডের পারফরম্যান্স পরিমাপের জন্য এটি একটি খুব ভালো উপকরণ, বিশেষ করে যখন কোডের নির্দিষ্ট অংশের কার্যকারিতা পরিমাপ করতে হয়।
- মুখ্য সময় ব্যবস্থাপনা: একাধিক কাজ বা প্রসেসের জন্য সময় পরিমাপ করে, আপনি সঠিকভাবে বুঝতে পারেন কোন অংশটি সিস্টেমের কর্মক্ষমতা উন্নত করতে সহায়ক।
Guava এর Stopwatch ক্লাস Java ডেভেলপারদের জন্য একটি অত্যন্ত সুবিধাজনক টুল যা কোডের পারফরম্যান্স পরীক্ষা করার জন্য ব্যবহৃত হয়। এটি সহজে সময় পরিমাপ করার জন্য একটি পরিষ্কার এবং কার্যকরী উপায় প্রদান করে, বিশেষ করে যখন আপনি কোডের এক বা একাধিক অংশের কর্মক্ষমতা বিশ্লেষণ করতে চান।
Read more