আজকে আমি আপনাদের সাথে J2me এর Thread.start() নিয়ে আলোচনা করবো। কিভাবে আপনারা start() Thread তৈরি করবেন। আমরা আগেই বলেছি java প্রোগ্রামিং এ Thread খুবি গুরুত্বপূর্ণ। আমরা আগের পর্বে Thread.sleep() নিয়ে আলোচনা করেছিলাম জেটা নির্দিষ্ট বেধে দেওয়া সময় পর অ্যাকবার excute হয়। আজকের এই পর্বে আমি Thread.start() method টি দেখাব . যা কোড live এ excute হবে। তো যাই হোক, এখন চলুন একটা উদাহারণ এর ম্যাধ্যমে শিখে নেই Thread.start() . এই উদাহারণ টি তে আমরা Date and Time live এ show করাব। তো নিচের step গুলো অনুসরন করুন। প্রথমে আমরা global variable গুলো declare করে নেই। অবশ্যই প্রথমে java.util import করে নিতে হবে। এখন আমরা StringItem Object তৈরি করবো। StringItem তৈরি করলাম এবং Form এ যুক্ত করলাম। এখন একটা command তৈরি করবো এবং form এ যুক্ত করবো। এখন আমরা Thread তৈরি করবো Thread.start() thread Object তৈরি হয়ে গেল। আমরা যখন Thread তৈরি করবো তখন MIDlet এর সাথে implements Runnable এটা যুক্ত করতে হবে। নিচে দেখানো হল। আর যখন আমরা command তৈরি করবো তখন MIDlet এর সাথে implements CommandListener যুক্ত করতে হয়। আর যখন command এবং Thread দুটোই থাকবে তখন দুটোই implements করতে হবে। নিচে দেখানো হোলো। এখন আমরা run() Method তৈরি করবো। এই run() এর ভিতরে যেই কোড লিখা হবে তা excute হতে থাকবে। যেহেতু এটার আমরা Time and Date show করাব। তাই আমরা Date Object তৈরি করবো। এবং সেটা String এ convert করবো StringItem এ যুক্ত করবো। toString() method টি Date Object টিই কে String এ রুপান্তরিত করবে এবং String হিসেবে StringItem এ excuted হতে থাকবে। আমরা এপ open করলেই live Time ।অ্যান্ড Date দেখতে পারবো। এই পর্যন্তই ছিলো আলোচনা শেষে আমরা commandAction exit command টা handle করবো এপ exit করার জন্য। আমরা commandAction কোড ব্লচক এর মধ্যে নিচের কোড টি লিখবো। নিচ থেকে পুরো Source কোড টি ডাউনলোড করে নেন J2me Thread Start
Display disp;
Form f;
StringItem str;
Command exit;
boolean b = true;
Date d;
এরপর আমরা constructor এ variable গুলো initialize করবো। প্রথমে Display এবং Form
disp = Display.getDisplay(this);
f = new Form("Thread Example");
str = new StringItem("Time and Date", "");
f.append(str);
exit = new Command("Exit", Command.EXIT,0);
f.addCommand(exit);
f.setCommandListener(this);
Thread t = new Thread(this);
t.start();
public class ThreadExample extends MIDlet implements Runnable {
}
public class ThreadExample extends MIDlet implements CommandListener, Runnable {
}
public void run() {
}
d = new Date();
str.setText(d.toString());
if (c == exit)
notifyDestroyed();
View Full Source Code
/*
* Thread Start Example
*/
import java.util.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class ThreadExample2 extends MIDlet implements CommandListener, Runnable {
Display disp;
Form f;
StringItem str;
Command exit;
boolean b = true;
Date d;
public ThreadExample2() {
disp = Display.getDisplay(this);
f = new Form("Thread Example2");
str = new StringItem("Time And Date", " ");
f.append(str);
exit = new Command("Exit", Command.EXIT,0);