Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7416115
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 29, 20262026-05-29T07:25:30+00:00 2026-05-29T07:25:30+00:00

I have to do a benchmarking for performance difference between multi-threaded and multi-process architecture

  • 0

I have to do a benchmarking for performance difference between multi-threaded and multi-process architecture in java. This is the code i used to create new process

         for(int i=0;i<100;i++)
          {
            try {
                Process p = Runtime.getRuntime().exec("java -jar myjar.jar " + input);
            } catch (Exception e) {
                System.out.println("Exception in creating process");
                e.printStackTrace();
            }
          }

Is there a way to know when all the processes started by my main java program has finished execution?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-29T07:25:31+00:00Added an answer on May 29, 2026 at 7:25 am

    Yes: call waitFor for each Process:

    for (Process p: processes) // you must save your Process references somewhere :)
       p.waitFor(); 
    

    If p is already finished the method returns inmediatly. If it’s not, it waits.

    Edit: if you need to do other things in the mean time, execute this for/wait in another Thread. The thread will end the loop when all process are terminated, and you can do other things:

    final List<Process> processes = new ArrayList<Process>();
    
    // start processes
    for (...) {
       p = ...
       processes.add(p);
    }
    
    // create and start "watchdog" thread
    new Thread() {
       public void run() {
          for (p: processes) 
             p.waitFor();
    
          // at this point all processes are terminated
       }.start();
    
    // ok, I've started the "watchdog" thread. now let's do fun stuff...
    
    // do my stuff...
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

We have a few processes in Java that use nanoTime for internal benchmarking (since
I have this code, that when swapping the order of UsingAs and UsingCast, their
I have implemented a simple parallel merge sort algorithm in Java. This cuts the
In benchmarking some Java code on a Solaris SPARC box, I noticed that the
I have a large piece of code, part of whose body contains this piece
I'm currently working on some performance critical code, and I have a particular situation
We have a large high-performance software system which consists of multiple interacting Java processes
I have a benchmarking program that calculates the time (in milliseconds and ticks), for
I have a python script that is a http-server: http://paste2.org/p/89701 , when benchmarking it
Have you guys had any experiences (positive or negative) by placing your source code/solution

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.