很简单 我给你个我写的程序,你可以参考一下 不懂的问我。
成都创新互联专业为企业提供献县网站建设、献县做网站、献县网站设计、献县网站制作等企业网站建设、网页设计与制作、献县企业网站模板建站服务,10年献县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
public class Shoupiao {
public static void main(String[] args) {
chushou c1=new chushou("A地火车站",10);
c1.start();//调用Thread中的run方法需要用start();
chushou c2=new chushou("B地火车站",5);
c2.start();
chushou c3=new chushou("C地火车站",8);
c3.start();
try {
c1.join(); //执行完 c1 c2 c3 在继续执行 目的让结束最后输出
c2.join();
c3.join();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("结束");
}
}
//新建一个类
class chushou extends Thread{//用继承Thread的方法来实现多线程
String iname;
public void run() {
for(int i=inumber;i0;i--){
System.out.println(iname+"火车票卖出一张"+"剩余"+(i-1)+"张");
try {
Thread.sleep(100);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
int inumber;
public String getIname() {
return iname;
}
public void setIname(String iname) {
this.iname = iname;
}
public int getInumber() {
return inumber;
}
public void setInumber(int inumber) {
this.inumber = inumber;
}
public chushou(String iname, int inumber) {
this.iname = iname;
this.inumber = inumber;
}
}
一方面你可以采用多cpu的系统,让几个线程在不同的cpu上同时执行。另外一方面在一个cpu上你可以考虑将线程的切换做成按需分配,就是说如果某个线程上一直都没有什么任务的话,就调整切换到这个线程的时间长一些,这样的话,就是这个线程执行的时间间隔比较大一些,由于它只是执行一个固定的任务比如向前走,所以实际看不出差别。对于某些有任务/事件的线程适当的设定切换时间,这样的话,我们就可以实时的处理事件。这个就跟看电影一样,大家主要是注意主角,所以我们其实主要是处理不一样的特别时间就好了,其他的一些固定或已知的事情就不要太多的关注就好了。
public class SaleTicket extends Thread{
static int mark=0;
static int ticket[]=new int [100];
int SaleTicketNo;
SaleTicket(int num){
SaleTicketNo=num;
}
public void run() {
// compute primes larger than minPrime
for(int i=0;i100;i++)
{
if(ticket[i]==0){
ticket[i]=1;
mark=mark+1;
System.out.println("售票机编号:"+SaleTicketNo+" 票号:"+i+" 张次:"+mark);
}
}
}
}
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
SaleTicket sale1=new SaleTicket(101);
SaleTicket sale2=new SaleTicket(102);
SaleTicket sale3=new SaleTicket(103);
SaleTicket sale4=new SaleTicket(104);
SaleTicket sale5=new SaleTicket(105);
sale1.start();
sale2.start();
sale3.start();
sale4.start();
sale5.start();
}
}
不考虑死锁问题
数据库里面添加所有火车站数据
查询的时候直接select mc lile'%青岛%'