Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #7784

Re: Java thread

From Owen Jacobson <angrybaldguy@gmail.com>
Newsgroups comp.lang.java.programmer
Message-ID <2011091103071380687-angrybaldguy@gmailcom> (permalink)
References <128ea2e0-7a2e-4c86-9507-8e15a0b892b9@p25g2000pri.googlegroups.com> <0d62ad20-0081-4bf2-9c5d-ee4600423150@f24g2000prb.googlegroups.com>
Subject Re: Java thread
Date 2011-09-11 03:07 -0400

Show all headers | View raw


On 2011-09-11 05:48:28 +0000, Jack said:

> On Sep 10, 9:03 pm, Jack <junw2...@gmail.com> wrote:
>> For Java thread, how to ensure that wait() does not miss notify()?
>> Otherwise the thread will hang and can not shut down.
>> 
>> Thanks. Jack
> 
> For example in the following code:
> 
> while(true)
> {
>     doSomeThing(); //Do some operation once a day
>     wait(24 * 3600); //sleep for one day. LINE1
> }
> 
> The thread blocks at LINE1 for one day. When the program shuts down,
> if the notify() is missing, then the program will hang.

The wait/notify protocol is a synchronization tool for collaborating 
threads, not a general-purpose delay mechanism. You probably want a 
timer (ScheduledExecutor or java.util.Timer or something) to handle 
once-an-interval events like this.

If you insist on tying up an entire thread's worth of memory and OS 
resources on doing nothing, use Thread.sleep instead, and issue 
shutdown notifications using Thread.interrupt as markspace suggested.

-o




Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Java thread Jack <junw2000@gmail.com> - 2011-09-10 21:03 -0700
  Re: Java thread markspace <-@.> - 2011-09-10 21:34 -0700
  Re: Java thread Patricia Shanahan <pats@acm.org> - 2011-09-10 22:42 -0700
  Re: Java thread Jack <junw2000@gmail.com> - 2011-09-10 22:48 -0700
    Re: Java thread Owen Jacobson <angrybaldguy@gmail.com> - 2011-09-11 03:07 -0400
    Re: Java thread Lew <lewbloch@gmail.com> - 2011-09-11 09:37 -0700
    Re: Java thread Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 16:56 -0400
  Re: Java thread Arne Vajhøj <arne@vajhoej.dk> - 2011-09-11 09:34 -0400
  Re: Java thread Roedy Green <see_website@mindprod.com.invalid> - 2011-09-11 08:32 -0700

csiph-web