Solved

clock scheduled event

Posted on 2006-07-14
9
236 Views
Last Modified: 2011-09-20
I am trying to write a program that executes some code at a certain time.  (eg. 3:00 am)  I am using the java swing class and can not figure out how to write this.  Can someone help me out?

-Jonathan
0
Comment
Question by:jmf8883
  • 2
  • 2
  • 2
  • +3
9 Comments
 
LVL 23

Expert Comment

by:Ajay-Singh
ID: 17111290
> Can someone help me out?
try using timer: http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/Timer.html
0
 

Author Comment

by:jmf8883
ID: 17111332
I have looked at that and am pretty sure I need to use it but I don't know how.  I want the event to occur at a specific time reguardless of when I start the timer.
0
 
LVL 23

Expert Comment

by:Ajay-Singh
ID: 17111405
Try this:

        long time = System.currentTimeMillis();
        Calendar cal = Calendar.getInstance();
        cal.setTimeInMillis(time);
        cal.set(Calendar.MILLISECOND, 0);
        cal.set(Calendar.SECOND, 0);
        cal.set(Calendar.MINUTE, 0);
        cal.set(Calendar.HOUR_OF_DAY, 3);
        if (cal.getTimeInMillis() < time) {
            cal.add(Calendar.DAY_OF_YEAR, 1);
        }
        Timer timer = new Timer(24 * 60 * 60 * 1000, ...);
        timer.setInitialDelay(cal.getTimeInMillis()-time);
0
 
LVL 24

Expert Comment

by:sciuriware
ID: 17111419
That only means you must schedule over the number of milliseconds
between now and then:
Use Calendar to compute the time in mSec of any moment.

;JOOP!
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 24

Expert Comment

by:sciuriware
ID: 17111423
That's what I meant ...
0
 
LVL 26

Expert Comment

by:ksivananth
ID: 17112136
also make a note of this

"Although all Timers perform their waiting using a single, shared thread (created by the first Timer object that executes), the action event handlers for Timers execute on another thread -- the event-dispatching thread. This means that the action handlers for Timers can safely perform operations on Swing components. However, it also means that the handlers must execute quickly to keep the GUI responsive."

If you expect the task can be lengthy one, consider executing the task in another thread and make the GUI update calls through SwingUtilities.invokeLater(...) method.
0
 
LVL 10

Expert Comment

by:mukundha_expert
ID: 17112177
Have a thread which checks for the current time to be 3.0 AM ( certain time ) , then call the program you want to execute from that thread,

0
 
LVL 10

Expert Comment

by:mukundha_expert
ID: 17112187
In the swing class start a thread which checks for the condition,


     Calendar cal = Calendar.getInstance () ;
     if ( cal.get ( Calendar.get ( Calendar.HOUR ) == 3 )
             // call method

0
 
LVL 92

Accepted Solution

by:
objects earned 500 total points
ID: 17112282
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Python Assistance 7 73
How can I do a Massively massive community reviewing-and-grading site? 7 70
unix in java example 9 53
MySqlDump not dumping triggers 1 18
Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Viewers learn about the “for” loop and how it works in Java. By comparing it to the while loop learned before, viewers can make the transition easily. You will learn about the formatting of the for loop as we write a program that prints even numbers…
This tutorial explains how to use the VisualVM tool for the Java platform application. This video goes into detail on the Threads, Sampler, and Profiler tabs.

896 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now