Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / February 2008

Tip: Looking for answers? Try searching our database.

Java Child Threads

Thread view: 
Hugo - 19 Feb 2008 18:42 GMT
Here is a conundrum...

User authenticates to a web application.....Parent thread is created.

At some point during the user's interaction with the application, I
would like to create a child thread that can perform a task
independent of the parent thread. Whether the child thread is
successful or not should be irrelevant to the  parent thread.

And the execution of the child thread's task should not delay the
parent thread....i.e. the parent thread should not wait until the
child thread completes its task.

Is this possible in Java...any pointers on hows to get this started?
Knute Johnson - 19 Feb 2008 18:56 GMT
> Here is a conundrum...
>
[quoted text clipped - 10 lines]
>
> Is this possible in Java...any pointers on hows to get this started?

That is really what threads are for.  There are a million ways to do
this but the simplest is to wrap the code you want to run in another
thread in a Runnable and create a thread and start it.

// parent decides to run a task in another thread
Runnable r = new Runnable() {
    public void run() {
        // do your thing
    }
};
new Thread(r).start();
// the Runnable above is now running concurrently with the parent
// parent continues

Signature

Knute Johnson
email s/nospam/knute/

     ------->>>>>>http://www.NewsDem

Peter Duniho - 19 Feb 2008 18:56 GMT
> [...]
> Is this possible in Java...any pointers on hows to get this started?

Have you look at the Thread class?
http://java.sun.com/javase/6/docs/api/java/lang/Thread.html
Daniel Pitts - 19 Feb 2008 22:00 GMT
> Here is a conundrum...
>
[quoted text clipped - 10 lines]
>
> Is this possible in Java...any pointers on hows to get this started?
Its quite possible, even easy.

One thing to consider though, is what happens if you get "slammed" by
traffic. Often times web containers will pool their main threads and
block incoming connections until a thread becomes available.  If you are
spinning off these child threads without any consideration, you may
overload the JVM with threads.  If it is a small tool used internally to
your company, don't worry too much about it.  If it is a webapp that
serves a high-volume web-site, check out ThreadPoolExecutor and the likes.

Whatever you decide to do, I *strongly* recommend you read the book Java
Concurrency in Practice.  It describes all the tools available to Java
programmers and most of the caveats of multi-threaded applications in
the Java platform.
<http://virtualinfinity.net/wordpress/technical-book-recommendations/java-concurr
ency-in-practice/
>

Signature

Daniel Pitts' Tech Blog: <http://virtualinfinity.net/wordpress/>



Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.