CodeGym /جاوا بلاگ /Random-SD /جاوا ٽائمر ڪلاس
John Squirrels
سطح
San Francisco

جاوا ٽائمر ڪلاس

گروپ ۾ شايع ٿيل
جاوا ٽائمر ڪلاس هڪ طاقتور اوزار آهي جيڪو توهان کي ڪمن کي شيڊول ڪرڻ جي اجازت ڏئي ٿو مخصوص وقفن تي عمل ڪرڻ لاءِ. ڇا توهان کي ڪم کي هڪ ڀيرو يا بار بار هلائڻ جي ضرورت آهي، ٽائمر ڪلاس توهان جي جاوا پروگرامن کي خودڪار ڪرڻ لاء هڪ آسان رستو مهيا ڪري ٿو. هن آرٽيڪل ۾، اسان جاوا ٽائمر ڪلاس جي خاصيتن کي ڳوليندا سين ۽ سکو ته ڪيئن ان کي مؤثر طريقي سان لاڳو ڪجي.

جاوا ٽائمر ڪلاس جو تعارف

ٽائمر ڪلاس java.util پيڪيج جو حصو آهي ۽ ڪم کي مقرر وقت تي يا باقاعده وقفن تي عمل ڪرڻ لاءِ استعمال ڪيو ويندو آهي . اهو هڪ سادي ۽ قابل اعتماد طريقو مهيا ڪري ٿو ڪوڊ تي عمل ڪرڻ لاءِ اڳواٽ مقرر وقفن تي، ان کي ڪمن لاءِ مثالي بڻائي ٿو جهڙوڪ واقعن کي متحرڪ ڪرڻ، وقتي اپڊيٽ ڪرڻ، يا پس منظر جي عملن کي شيڊول ڪرڻ. ٽائمر ڪلاس استعمال ڪرڻ لاءِ ، توھان کي java.util.Timer ڪلاس مان ٽائمر اعتراض ٺاھڻ گھرجي . هي ٽائمر اعتراض توهان جي گهرجن جي بنياد تي ڪم جي شيڊول ۽ عمل ڪرڻ جو ذميوار آهي.

ٽائمر آبجیکٹ ٺاهڻ

اچو ته هڪ ٽائمر اعتراض ٺاهڻ ۽ ان جي طريقن کي ڳولڻ شروع ڪريون. ھيٺ ڏنل ڪوڊ مثال ۾، اسان ھڪڙي ٽائمر اعتراض ٺاھيو آھي ۽ ھڪڙي مقرري دير کان پوء ھڪڙي ڪم کي انجام ڏيڻ لاء شيڊول ڪريو:
// First we will import the java.util.Timer & java.util.TimerTask classes
import java.util.Timer;
import java.util.TimerTask;

public class TimerExample {
    public static void main(String[] args) {
        Timer timer = new Timer(); // Creating a Timer object from the timer class

        TimerTask task1 = new TimerTask() {
            public void run() {
                System.out.println("Task 1 executed!");
            }
        };

        TimerTask task2 = new TimerTask() {
            public void run() {
                System.out.println("Task 2 executed!");
            }
        };

        TimerTask task3 = new TimerTask() {
            public void run() {
                System.out.println("Task 3 executed!");
            }
        };

        // Scheduling tasks to run after specified delays
        timer.schedule(task1, 2000); // Using the schedule method of the timer class
        timer.schedule(task2, 4000); // Using the schedule method of the timer class
        timer.schedule(task3, 6000); // Using the schedule method of the timer class
    }
}
ھن تازه ڪاري مثال ۾، ٽائمر اعتراض ٺاھيو ويو آھي ٽائمر ڪلاس استعمال ڪندي. هر ٽائمر ٽاسڪ هڪ ڪم جي نمائندگي ڪري ٿو جيڪو ٽائمر طرفان شيڊول ۽ ان تي عمل ڪيو وڃي ٿو. هر TimerTask جي اندر هلائڻ جو طريقو ڪوڊ تي مشتمل آهي جنهن تي عمل ڪيو وڃي ٿو جڏهن ڪم هلندو آهي. ڪم وري ٽائمر ڪلاس جي شيڊول جي طريقي کي استعمال ڪندي شيڊول ڪيا ويا آھن ، ڪم جي وضاحت ڪندي ۽ ملي سيڪنڊن ۾ دير. هن ڪوڊ ۾، شيڊول جو طريقو ٽي ڀيرا استعمال ڪيو ويندو آهي، هر ڀيري مختلف ڪم ۽ دير سان.

پيداوار

جڏهن توهان ڪوڊ هلائيندا آهيو، اهو آئوٽ ٿيندو:
ٽاسڪ 1 تي عمل ڪيو ويو! ٽاسڪ 2 تي عمل ڪيو ويو! ٽاسڪ 3 تي عمل ڪيو ويو!
هر ڪم تي عمل ڪيو ويندو آهي ان جي لاڳاپيل دير کان پوء، ٽائمر ڪلاس جي ڪارڪردگي جو مظاهرو ڪندي .

ٽائمر جا طريقا

ٽائمر ڪلاس مختلف طريقا مهيا ڪري ٿو ڪمن کي انجام ڏيڻ لاءِ شيڊول ڪرڻ لاءِ . اچو ته ڪجھ عام استعمال ٿيل طريقن جي ڳولا ڪريو:

1. شيڊول (ٽائمر ٽاسڪ ٽاسڪ، ڊگھي دير)

اهو طريقو مقرر ٿيل دير کان پوءِ عمل ڪرڻ لاءِ مخصوص ڪم کي شيڊول ڪري ٿو. دير مليس سيڪنڊن ۾ بيان ڪئي وئي آهي. مثال طور:
timer.schedule(task, 5000); // Schedule the task to run after a 5-second delay

2. شيڊول (ٽائمر ٽاسڪ ٽاسڪ، تاريخ جو وقت)

اهو طريقو مقرر ڪيل وقت تي عمل ڪرڻ لاء مخصوص ڪم کي ترتيب ڏئي ٿو. ڪم صرف هڪ ڀيرو عمل ڪيو ويندو. مثال طور:
Date executionTime = new Date(System.currentTimeMillis() + 5000); // Get the current time + 5 seconds
timer.schedule(task, executionTime); // Schedule the task to run at the specified time

3. شيڊول (ٽائمر ٽاسڪ ٽاسڪ، ڊگھي دير، ڊگھي مدت)

اهو طريقو مخصوص ڪم کي بار بار انجام ڏيڻ لاءِ مقرر دير کان پوءِ ۽ مخصوص وقفن تي ترتيب ڏئي ٿو. دير پهرين عمل کان اڳ مليسيڪنڊن ۾ وقت آهي، ۽ عرصو بعد ۾ عملدرآمد جي وچ ۾ ملي سيڪنڊن ۾ وقت آهي. مثال طور:
timer.schedule(task, 2000, 5000); // Schedule the task to run after a 2-second delay and repeat every 5 seconds

جاوا ٽائمر شيڊول

بنيادي شيڊولنگ طريقن کان علاوه، ٽائمر ڪلاس هڪ طاقتور شيڊولنگ جو طريقو پڻ مهيا ڪري ٿو جنهن کي شيڊول سڏيو ويندو آهي (TimerTask task, Date firstTime, long period) . اهو طريقو توهان کي اجازت ڏئي ٿو ته هڪ ڪم کي شيڊول ڪرڻ لاءِ بار بار عمل ڪرڻ لاءِ هڪ مخصوص وقت تي ۽ باقاعده وقفن تي. ھتي ھڪڙو مثال آھي جيڪو ھن طريقي جي استعمال کي ظاھر ڪري ٿو:
import java.util.Timer;
import java.util.TimerTask;
import java.util.Date;

public class TimerExample {
    public static void main(String[] args) {
        Timer timer = new Timer();

        TimerTask task = new TimerTask() {
            public void run() {
                System.out.println("Task executed!");
            }
        };

        // Schedule the task to run every 5 seconds starting from the current time
        Date startTime = new Date();
        timer.schedule(task, startTime, 5000);
    }
}
هن مثال ۾، اسان هڪ ٽائمر اعتراض ٺاهيو ۽ هڪ ٽائمر ٽاسڪ کي بيان ڪيو جيئن اڳ. اسان ڪم لاءِ شروعاتي وقت جي وضاحت ڪرڻ لاءِ تاريخ جو هڪ startTime اعتراض پڻ ٺاهيو . شيڊول جو طريقو وري استعمال ڪيو ويندو آهي ڪم کي شيڊول ڪرڻ لاءِ هر 5 سيڪنڊن کي هلائڻ لاءِ موجوده وقت کان شروع ٿيندڙ. هن شيڊولنگ طريقي سان، ڪم مخصوص وقفي تي عمل جاري رهندو جيستائين ٽائمر اعتراض منسوخ نه ڪيو وڃي يا پروگرام ختم ٿي وڃي. ٻي صورت ۾، اهو هڪ استثنا اڇلائي ڇڏيندو.

نتيجو

java.util.Timer پيڪيج مان جاوا ٽائمر ڪلاس هڪ ورسٽائل اوزار آهي توهان جي جاوا ايپليڪيشنن ۾ ڪم جي شيڊول ڪرڻ لاءِ. اهو توهان کي مخصوص وقفن تي ڪوڊ جي عمل کي خودڪار ڪرڻ جي اجازت ڏئي ٿو، ان کي مختلف منظرنامي لاء ڪارائتو بڻائي ٿو جهڙوڪ واقعن کي متحرڪ ڪرڻ، وقتي اپڊيٽ انجام ڏيڻ، يا پس منظر جي عملن کي شيڊول ڪرڻ. ھن آرٽيڪل ۾، اسان جاوا ٽائمر ڪلاس جي بنيادي ڳالھين کي ڳولي رھيا آھيون ، بشمول ٽائمر اعتراض جي ٺاھڻ ، دير يا مخصوص وقتن سان ڪمن کي شيڊول ڪرڻ، ۽ بار بار عملدرآمد کي ترتيب ڏيڻ. اسان ٽائمر ڪلاس پاران مهيا ڪيل اهم طريقن جي باري ۾ پڻ سکيو ، جهڙوڪ `شيڊول` ۽ شيڊول (TimerTask ٽاسڪ، تاريخ پهريون وقت، ڊگهو عرصو) . ٽائمر ڪلاس کي مؤثر طريقي سان استعمال ڪندي ، توهان پنهنجي جاوا پروگرامن ۾ خودڪار ۽ ڪارڪردگي جي سطح شامل ڪري سگهو ٿا. مختلف شيڊولنگ اختيارن سان تجربو ڪريو ۽ ٽائمر ڪلاس جون وڌيڪ صلاحيتون ڳوليو توھان جي ايپليڪيشنن جي ڪارڪردگي کي وڌائڻ لاءِ.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION