Tag: 计时器

跳过function,如果它需要太长时间

在Java中,我有一个以某种方式处理文本文件的函数。 但是,如果花费太多时间,该过程很可能对该文本文件无用(无论什么原因),我想跳过它。 此外,如果过程耗时太长,它也会占用太多内存。 我试图用这种方式解决它,但它不起作用: for (int i = 0; i<docs.size(); i++){ try{ docs.get(i).getAnaphora(); } catch (Exception e){ System.err.println(e); } } 其中docs只是List的文件List 。 通常我必须手动停止代码,因为它“卡在”特定文件(取决于该文件的内容)。 有没有办法测量该函数调用的时间并告诉Java跳过该函数所需的文件,比如10秒? 编辑 在将几个不同的答案拼凑在一起后,我想出了这个解决方案,它运行正常。 也许其他人也可以使用这个想法。 首先创建一个实现Runable的类(这样你可以根据需要将参数传递给Thread): public class CustomRunnable implements Runnable { Object argument; public CustomRunnable (Object argument){ this.argument = argument; } @Override public void run() { argument.doFunction(); } } 然后在main类中使用此代码来监视函数的时间( argument.doFunction() ),如果需要long则退出: […]

在Timer中调度Java TimerTask时,它是否已经“正在执行”?

我想澄清一下有关TimerTask的内容。 如果您有以下代码: timer.schedule(task, 60000); 如果任务计划在接下来的1分钟内运行,那么任务对象是否已在执行? 因为我的代码中的某个地方我调用了task.cancel()但似乎调用没有阻止 要执行的任务。 我甚至记录了来自调用的返回值,它返回false。 当我阅读取消方法的文档时,我想到了我的问题: 取消TimerTask并将其从Timer的队列中删除。 通常,如果调用没有阻止TimerTask至少运行一次,则返回false。 后续调用无效。 如果调用阻止了计划执行,则返回true,否则返回false。 我相信我在1分钟的延迟之前打电话给cancel()。 但是如何取消返回false, 是[任务]已经执行了吗? 希望你能给我提供线索/提示甚至解释。 谢谢!

TimerTask和Executors.newScheduledThreadPool之间的区别(1)

我需要安排一些将来要完成的工作。 我可以用两种方式做到: 创建TimerTask并执行timer.schedule(…); 使用Executors.newScheduledThreadPool(1) : ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); ScheduledFuture scheduleHandle = scheduler.schedule(pushExternalRunnable, runScheduleDate.getTime() – now.getTime(), TimeUnit.MILLISECONDS); 这两种方法在未来安排工作有什么区别?

Android测验游戏 – 每个qstion的倒数计时器

我使用以下教程为Android创建了一个Quiz应用程序: http : //automateddeveloper.blogspot.co.uk/2011/06/getting-started-complete-android-app.html 对于每个问题,用户只有20秒的时间来回答它。 如果他/她在20秒内未能回答,则会弹出AlertDialog ,游戏将终止。 为此,我在QuestionActivity class的OnCreate方法中添加了一个计数器: final TextView myCounter = (TextView) findViewById(R.id.countdown); new CountDownTimer(20000, 1000) { @Override public void onFinish() { timeUp(); } @Override public void onTick(long millisUntilFinished) { myCounter.setText(“Time left: ” + String.valueOf(millisUntilFinished / 1000)); } }.start(); public void timeUp() { AlertDialog.Builder builder = new AlertDialog.Builder( QuestionActivity.this); builder.setTitle(“Times up!”) .setMessage(“Game over”) […]

用Java创建一个简单的计时器

我似乎无法弄清楚如何在java中创建一个简单的计时器。 我需要做的只是显示时间,真的。 所以只是一个开始的方法,它一直在计数,如0:00,0:01,0:02等。我已经看到了一些其他类似的论坛post,但所有的代码是有点复杂的我的水平理解; 我是java的新手。 但是,制作一个只执行这种基本function的计时器并不难吗? 如果有人可以提供帮助,将非常感谢:)

部署Java EE应用程序后执行任务

我有一个Java EE应用程序,它应该在部署后与外部系统一起启动同步过程。 我怎么能实现这个要求?

Java游戏开发:如何围绕此代码设置计时器?

我正在制作一个“太空入侵者风格”的游戏。 您(播放器)在屏幕底部左右移动。 每个窗口都会有一个敌人,你必须移动到窗口射击。 我正在研究弹出系统的敌人。 敌人随机的窗口应该每3秒更换一次。 这是我的代码: int enemylocation = new Random().nextInt(2) +1; if(enemylocation==1){ enemy1.setFilter(Image.FILTER_NEAREST); enemy1.draw(200,170,s*10); } if(enemylocation==2){ enemy2.setFilter(Image.FILTER_NEAREST); enemy2.draw(200,360,s*10); } 一切正常,但随机数部分总是选择一个新数字,因此两个窗口都在闪烁。 如何延迟定时器每3秒更改一次ene​​mylocation的值而不是经常? 谢谢

如何在java中的指定时间自动执行函数

我有一个要求,我需要在用户设置的指定时间执行一个函数。该函数包含从数据库生成pdf文件并将其保存到机器的本地驱动器的代码。这里需要的时间是由用户设置,可以根据他的要求进行更改。 我从未使用过计时器类.. 我有一个代码片段,我从谷歌,但我没有得到如何在此代码中设置function执行的用户特定时间细节.. 这是代码片段.. class ReportGenerator extends TimerTask { public void run() { System.out.println(“Generating report”); //TODO generate report } } class MainApplication { public static void main(String[] args) { Timer timer = new Timer(); Calendar date = Calendar.getInstance(); date.set( Calendar.DAY_OF_WEEK, Calendar.SATURDAY); date.set(Calendar.HOUR, 0); date.set(Calendar.MINUTE, 0); date.set(Calendar.SECOND, 0); date.set(Calendar.MILLISECOND, 0); // Schedule to run every Sunday […]

如何以设定的时间间隔生成随机数?

我已经开发了Java代码,用于生成0到99范围内的10个随机数。问题是我需要每2分钟生成一个随机数。 我是这个领域的新手,需要你的意见。

java计时器更改延迟按钮

我有一个动画,我想通过点击按钮来加速和减速。 我环顾四周,无法找到解决方案。 目前我有一个用于按钮的actionlistener,用于更改延迟变量的值并重新启动计时器。 任何人都可以请指教。 谢谢