gpt4 book ai didi

java - java中如何使用循环超时?

转载 作者:行者123 更新时间:2023-12-02 01:51:15 26 4
gpt4 key购买 nike

我编写的这段代码。

public long detecFace(int threshold, int dir, JLabel... lbl) throws InterruptedException {

long timeStart = Calendar.getInstance().getTimeInMillis();
BufferedImage[] finalImg = new BufferedImage[10];
BufferedImage[] edgeImage = new BufferedImage[10];

long t = System.currentTimeMillis();
long end = t-300000;
while (t < end){
for (int i = 0; i < 5; i++) {
ip.setFileImage(df.getFile()[i]);
ip.procesImage(threshold, dir);
edgeImage[i] = ip.getEdgeImage();
//ImageDrawer.drawOriginalImage(edgeImage[i]); //BENER HASIL YANG KELUAR
finalImg[i] = showSelectedFace(RHT(edgeImage[i]), ResearchData.getOriginalImage()[i]);
//ImageDrawer.drawOriginalImage(finalImg[i]); //SALAH HASIL YANG KELUAR
int count = 1;
int total = count + i;
System.out.println(total);

if (finalImg[i] != null)
{
ui.drawerImage(finalImg[i], lbl[i]);
} else {
System.out.println("Failed!");
}
}
Thread.sleep(end);
}
ResearchData.setEdgeImage(edgeImage);
ResearchData.setFinalImage(finalImg);

long timeEnd = Calendar.getInstance().getTimeInMillis();
long tt = timeEnd - timeStart;
long second = tt/1000;
long minute = second/60;
long seconds = second%60;
System.out.println("minute =" +minute+ "; second =" +seconds);
return tt;
}`

我尝试使用超时进行循环,但我将结果堆叠起来。没有错误,但逻辑错误。我想让我的程序运行 3 或 5 分钟,只要程序运行,就会再次循环。帮助我找到问题的最佳解决方案。谢谢

最佳答案

尝试这样。

  long start = System.currentTimeMillis();
long end = start + 300000;
while(true) {
//do your code
//
if(System.currentTimeMillis() > end) {
break;
}
}

关于java - java中如何使用循环超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52961076/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com