
正文
java开火车代码 java 火车进站
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
用JAVA如何做到避免出现一票多卖的情况?
如果是数据库java开火车代码,可以使用数据库的锁机制java开火车代码,如果你是想要在自己的程序中进行控制,那么可以使用同步机制,谁先抢占到票的资源谁就获得该资源的处理权限,其它的申请存于请求队列中,或者干脆直接拒绝。
相关问答
Q1: java多线程问题,火车票买票
楼上答案是正解,你一直用一个对象的在set,共享了同一个对象.其实也没用新建5个对象.
可以set之后就开始执行.但是多线程的意义可能不大了.
package com.experiment9;
public class Ticket extends Thread {
public Ticket(String s){
super(s);
}
int num=100; //静态变量
public void run(){
while(true){
synchronized (" "){ //同步块实现多线程
if(num0){
try {
Thread.sleep(500); //线程休眠10毫秒
}catch (Exception e){
e.printStackTrace();
}
System.out.println(this.getName()+"------------------------"+(num--));
}
}
}
}
public static void main(String[] args) { //main 函数
Ticket ticket =new Ticket("5号窗口");
Thread thread_5=new Thread(ticket);
ticket.setName("一号窗口");
thread_5.start();
Thread thread_1=new Thread(ticket);
ticket.setName("二号窗口");
thread_1.start();
Thread thread_2=new Thread(ticket);
ticket.setName("三号窗口");
thread_2.start();
Thread thread_3=new Thread(ticket);
ticket.setName("四号窗口"); //为什么前面的set那么没用呢?
thread_3.start();
Thread thread_4=new Thread(ticket);
thread_4.start();
}
}
Q2: java中,用static 变量,实现卖火车票,假如有三个窗口,每个窗口都在卖一辆火车的票, 买的票不能重复!
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();
}
}
不考虑死锁问题
Q3: Java编程 假设有火车票1000张,创建10个线程模拟10个售票点,每个售票点100毫秒售出一张票。
package tmp;
public class Test {
private static int k=0;//售出票数
private static int count=1000;//总票数
private static synchronized boolean sell(int n){
if(kcount){
k++;
System.out.println("第"+n+"售票点售出第"+k+"张票");
return true;
}
return false;
}
static class SellPot extends Thread{//售票点
int n;//售票点编号
public SellPot(int n){
this.n=n;
}
public void run(){
while(sell(n)){
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
for(int i=1;i=10;i++){
new SellPot(i).start();
}
}
}
//银行汇款
public class Test2 {
private static int k=0;//总汇款
private static synchronized void send(int m,int i,int n){
k+=m;
System.out.println("第"+n+"个顾客进行第"+(i+1)+"次汇款,银行接收总汇款"+k);
}
static class Costum extends Thread{//售票点
int n;//顾客编号
public Costum(int n){
this.n=n;
}
public void run(){
for(int i=0;i3;i++){
send(100,i,n);//汇款100
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
for(int i=1;i=3;i++){
new Costum(i).start();
}
}
}
Q4: 我的世界java有动力火车吗?
是java开火车代码的,“我java开火车代码的世界Java版”中支持动力火车。只需要在游戏中购买动力火车相关物品,即可使用动力火车功能,快捷方便地移动。
Q5: 土豆网视频
高清视频的意思
土豆的子网站黑豆中都是这样高清的视频
至于怎么上传吗,下面是复制的
很多朋友问:土豆网有很多H标志的高清节目,是怎么上传的?怎样在土豆网上传的节目才能最清晰?
其实土豆网所有上传的视频、音频都会被统一转换成土豆制订的FLV标准格式文件,土豆视频码率在300kbps左右。
但现在土豆网开发了豆花积分系统,大家就有机会可以上传H高清节目了。
不过要满足以下几个条件,视频才会被转为H高清:
1、豆花到8级,可以使用“清晰上传”功能的用户。
2、原始视频码流在1m以上。
3、该片源以前没有被其它用户上传过。
4、片源是宽屏16:9,或比16:9还要宽(如:22:9)
5、视频时长在10秒到30分钟之间。
按上述这样的情况,视频差不多每分钟有8M以上。
java开火车代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 火车进站、java开火车代码的信息别忘了在本站进行查找喔。







