多线程模拟银行摇号
1.自定义线程实现Runnable接口
package org.best.thread;
public class MyThread implements Runnable{
private int num;
public MyThread(int num) {
this.num=num;
}
@Override
public void run() {
synchronized ("1") {
System.out.println(Thread.currentThread().getName() + "\t" + num + "号");
if (num>0){
num--;
}
}
}
}
2.测试类
package org.best.thread;
import java.util.Scanner;
public class Test {
private static int num = 100;
public static void main(String[] args) {
MyThread myThread = new MyThread(num);
System.out.println("请输入人数");
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
for (int i=1;i<=num;i++){
Thread thread = new Thread(myThread);
thread.setName("用户"+i);
thread.start();
}
}
}