当前位置:编程学习 > JAVA >>

关于java程序执行的问题

假设 Class A 下面 有个main(args【】)方法,在linux服务器下,不同两个用户同时运行了这个方法,怎么避免这种问题,当1用户在运行的时候,另外一用户不能运行,或者是判断args【】参数相同时只允许一个用户运行。 --------------------编程问答-------------------- main只是程序的入口,可以同时被多个执行啊!你要避免的是其中的某个类,不能同时被多个线程执行,使用单例模式什么的可以控制。

欢迎投我一票,谢了!
http://vote.blog.csdn.net/blogstaritem/blogstar2013/zhangerqing --------------------编程问答-------------------- 为这个方法加把锁,比如:
//假如这是你的方法
public String main(String args){
synchronized (this) {
          //内容体   
        }
}
这样1用户进入,2用户就进不去,要等到1出来后,2才能进去 --------------------编程问答-------------------- 不好意思啊,我可能没说清楚,这里面说的不是线程的问题,这里面就是说运行main主方法的问题
,linux是支持多用户登陆的,A用户登陆到ftp某账户,执行了这个main方法,B用户也登陆到ftp这账户,然后也执行了main方法 --------------------编程问答-------------------- 我现在就是要控制main方法,当args参数传的一样,就不能运用第二次了 --------------------编程问答-------------------- 把用户运行的参数记到文件里。
每次有用户运行,就读取该文件,看是不是已经有运行的了,有的话就提示用户。 --------------------编程问答-------------------- 你这个方法比较好,但是还有一个问题就是,假设两个用户是同时运行这个main,执行时间一样,前面一个用户的运行参数还没记录到文件中,后面一个用户已经执行了读文件的程序,这样问题有人能解决吗? --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 搞个文件记录运行情况 每次运行前读取文件 --------------------编程问答--------------------
引用 8 楼 a8509190 的回复:
搞个文件记录运行情况 每次运行前读取文件



你这个方法比较好,但是还有一个问题就是,假设两个用户是同时运行这个main,执行时间一样,前面一个用户的运行参数还没记录到文件中,后面一个用户已经执行了读文件的程序,这样问题有人能解决吗? --------------------编程问答-------------------- 话说概率是那么的大


引用 9 楼 u013050310 的回复:
Quote: 引用 8 楼 a8509190 的回复:

搞个文件记录运行情况 每次运行前读取文件



你这个方法比较好,但是还有一个问题就是,假设两个用户是同时运行这个main,执行时间一样,前面一个用户的运行参数还没记录到文件中,后面一个用户已经执行了读文件的程序,这样问题有人能解决吗?
补充:Java ,  Java SE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,