java_線程的開啟與結束(可用於android),javaandroid
package testJavaAll;
import java.util.Timer;
import java.util.TimerTask;
/**
* 測試線程開啟和停止cancel的
*
* 2014年10月21日 10:34:57
*
* yjbo
*/
public class testThread {
Timer timer;
private int x = 0;
public testThread(int seconds, int seconds2) {
timer = new Timer();
timer.schedule(new RemindTask(), seconds * 1000, seconds2 * 1000);
}
class RemindTask extends TimerTask {
public void run() {
x++;
System.out.println("----xx---" + x);
if (x < 10) {
// 開啟線程
System.out.println("Time's up!");
} else if (x == 10) {
// 停止線程
timer.cancel(); // Terminate the timer thread
System.out.println("Time's up!`````000");
}
}
}
public static void main(String args[]) {
System.out.println("About to schedule task.");
new testThread(1, 2);
System.out.println("Task scheduled.");
}
}
// }
Java(Android)有關線程的執行問題
其實可以判斷的
給你一個例子:
public static void main(String[] s) {
Thread a = new Thread() {
@Override
public void run() {
while (!interrupted()) {
netOperation();
}
}
};
a.start();
if (!a.isInterrupted()) {
//這裡判斷是否在運行
//如果已經執行完了 你可以再次new出來
System.out.println("is run.");
}
}
java或者android實現非同步方式只可以用多線程,有沒有其他的方式
android中有AsyncQueryHandler和AsyncTask都是用來非同步訊息傳遞的,不過本質都是多線程,不過Android幫你封裝好了方便調用而已。希望能夠協助到你!