Revise The Threaded Sort Application To Improve The Performance By Applying One 2

Revise the threaded sort application to improve the performance by applying one or more of the principles to improve the efficiency of I/O.
Provide the improved code.
Here is the code:
import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.IOException;import java.util.ArrayList;
public class Sort {
  /**   * You are to implement this method. The method should invoke one or   * more threads to read and sort the data from the collection of Files.   * The method should return a sorted list of all of the String data    * contained in the files.   *    * @param files   * @return   * @throws IOException    */  public static void threadedSort(File[] files) throws IOException {  //Commenting out to use the multithread      /* throw new java.lang.IllegalStateException(“Method not implemented”); */  }      /**   * Given an array of files, this method will return a sorted    * list of the String data contained in each of the files.   *    * @param files the files to be read   * @return the sorted data   * @throws IOException thrown if any errors occur reading the file   */  public static String[] sort(File[] files) throws IOException {
    String[] sortedData = new String[0];
    for (File file : files) {      String[] data = getData(file);      data = MergeSort.mergeSort(data);      sortedData = MergeSort.merge(sortedData, data);    }
    return sortedData;
  }
    /**   * This method will read in the string data from the specified    * file and return the data as an array of String objects.   *    * @param file the file containing the String data   * @return String array containing the String data   * @throws IOException thrown if any errors occur reading the file   */  private static String[] getData(File file) throws IOException {
    ArrayList<String> data = new ArrayList<String>();    BufferedReader in = new BufferedReader(new FileReader(file));
    // Read the data from the file until the end of file is reached    while (true) {      String line = in.readLine();      if (line == null) {        // the end of file was reached        break;      }      else {        data.add(line);      }    }        //Close the input stream and return the data    in.close();    return data.toArray(new String[0]);
  }}
 
“Looking for a Similar Assignment? Get Expert Help at an Amazing Discount!”

What Students Are Saying About Us

.......... Customer ID: 12*** | Rating: ⭐⭐⭐⭐⭐
"Honestly, I was afraid to send my paper to you, but splendidwritings.com proved they are a trustworthy service. My essay was done in less than a day, and I received a brilliant piece. I didn’t even believe it was my essay at first 🙂 Great job, thank you!"

.......... Customer ID: 14***| Rating: ⭐⭐⭐⭐⭐
"The company has some nice prices and good content. I ordered a term paper here and got a very good one. I'll keep ordering from this website."

"Order a Custom Paper on Similar Assignment! No Plagiarism! Enjoy 20% Discount"