View Javadoc
1   /**
2    * Copyright 2010-2013 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.common.util;
17  
18  import java.util.List;
19  
20  public class ThreadUtils {
21  
22  	/**
23  	 * Sleep for <code>millis</code> throwing <code>IllegalStateException</code> if we get interrupted.
24  	 */
25  	public static void sleep(long millis) {
26  		try {
27  			Thread.sleep(millis);
28  		} catch (InterruptedException e) {
29  			throw new IllegalStateException(e);
30  		}
31  	}
32  
33  	public static void start(List<Thread> threads) {
34  		for (Thread thread : threads) {
35  			thread.start();
36  		}
37  	}
38  
39  	public static void join(List<Thread> threads) {
40  		try {
41  			for (Thread thread : threads) {
42  				thread.join();
43  			}
44  		} catch (InterruptedException e) {
45  			throw new IllegalStateException(e);
46  		}
47  	}
48  }