Running multithreaded example groovy


#!/bin/env groovy

def MAX_THREADS = 24
class MyThread extends Thread {

private i ;

public MyThread( int code ) {
this.i = code;
}
public void run() {
def rand = new java.util.Random()
sleep(1 + rand.nextInt(2000) );
println "HELLO " + i
}
}

println " Started "
def Thread[] results = new Thread[MAX_THREADS]
for ( int i = 0 ; i < MAX_THREADS ; i++ ) {
println "Started thread " + i
results[i] = new MyThread(i);
results[i].start()
}
for (int i = 0; i < results.length; i++) {
try {
results[i].join();
} catch (InterruptedException ignore) {}
}
println "Done ... "
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s