java 如使让一个方法只能调用一次 除非这个方法运行结束

java如使让一个方法只能调用一次除非这个方法运行结束如publicclassStockInfoextendsThread{publicvoidStockInfo(){n... java 如使让一个方法只能调用一次 除非这个方法运行结束


public class StockInfo extends Thread{

public void StockInfo(){
new StockInfo().start();
//如果让这个调用 只能一次(只有一个线程 可以使用)
}

public void run(){"死循环"}
}
public Synchronize void run(){"死循环"} 加上 貌似无效
展开
 我来答
匿名用户
2016-06-29
展开全部
使用Synchronized或者ReetrantLock
也可以在方法内添加标识 在方法开始执行时改变标识状态 方法结束后也改变标识状态 只要当标识符合条件时才执行方法体内容 比如:
int status = true;
public String getSomeThing(){
var ret = "";

if(status ){
status = false;
........................

status = true;

return "someThing";

}

return ret;
}
这个方法虽然没像你说的只能调用一次 但是你方法体的内容被控制住了 也可以变相的达到要的效果
不过还是推荐使用同步锁~~
sunguichun2003
2016-06-29 · TA获得超过752个赞
知道小有建树答主
回答量:754
采纳率:0%
帮助的人:512万
展开全部
线程同步,synchronized关键字
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yan373738240
2016-06-29 · 超过24用户采纳过TA的回答
知道答主
回答量:75
采纳率:0%
帮助的人:40.5万
展开全部
在方法前加synchronized
追问
public  Synchronized  void run(){"死循环"}

没作用 还是运行两次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式