首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

多用户执行相同程序的有关问题

2013-12-29 
多用户执行相同程序的问题因为这一段程序可以涉及到生成一些文件的问题,假设linux服务器上,a,b用户都登陆

多用户执行相同程序的问题
因为这一段程序可以涉及到生成一些文件的问题,假设linux服务器上,a,b用户都登陆该服务器,执行这段程序主方法,问题就出来了,请教高手,有没有技术能在a执行的时候,对 程序就行锁定,让b执行不了。或者有更好的方法求教。
[解决办法]
搞个文件,记录程序当前的运行状态,不过这样在并发高的情况下可能还是会冲突,如果是这种场景,就起个服务专门来处理咯
[解决办法]
定一个全局静态变量
public static boolean runing =false;
如果有人运行设置为 true; 每次运行前查查这个变量则可.
[解决办法]

引用:
定一个全局静态变量
public static boolean runing =false;
如果有人运行设置为 true; 每次运行前查查这个变量则可.


楼主这个不是多线程的问题了,如题,a,b都启动主方法,就会启动两个jvm了,设置静态变量也没法共享的。
可以考虑一下设置目录的权限来实现吧,不然就通过共享内存的方法,使用memcached做共享缓存
[解决办法]
我开始以为一个用web实现的功能,看了题目好像不是。程序开始先判断有没有一个running.txt文件,有则说明已经有人在执行程序了,没有则说明有没有人,就在生成一个running.txt(还可以在里面写入一些信息),并开始执行,执行完了之后就删除running.txt,表示程序结束让其他人可以执行了。

热点排行