イニシャルスレッド
2344 ワード
今日はいくつかの理由でスレッドを書いてみましたが、
//以前は学んだことがありますが、基本的には深く理解したことがありません.今回はまた勉強しましたが、まだ深く理解していません.
/**
*
*/
package threadTest;
import java.util.ArrayList;
import java.util.List;
public class MainThreadTest extends Thread {
private int index = 0;
// , , list ,
// static , ,
// ,
private static List list = new ArrayList();
//
private static boolean exit = true;
//
private static MainThreadTest instance;
public static MainThreadTest getInstanc() {
if (instance == null) {
return new MainThreadTest();
} else {
return instance;
}
}
@Override
public void run() {
while (exit) {
if (list != null) {
for (String str : list) {
System.out.println(str + "---------------------" + index);
}
}
index++;
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
// list
public void test(List list_t) {
list.addAll(list_t);
}
//
public void start_main() {
MainThreadTest.getInstanc().start();
}
//
public void exit_main() {
exit = false;
}
}
package threadTest;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
/**
*
* @author jueyue
*
*/
public class TestMain {
public static void main(String[] args) {
//
MainThreadTest.getInstanc().start_main();
Scanner input = new Scanner(System.in);
List list = new ArrayList();
boolean jueyue = true;
while(jueyue){
System.out.println(" : ———");
String str = input.next();
list.add(str);
//
MainThreadTest.getInstanc().test(list);
if(str.equals("jueyeu")){
jueyue = false;
//
MainThreadTest.getInstanc().exit_main();
}
list.clear();
}
System.out.println(" —————————————");
}
}
//以前は学んだことがありますが、基本的には深く理解したことがありません.今回はまた勉強しましたが、まだ深く理解していません.