Package com.packtpub.java7.concurrency.chapter6.recipe03.task

Examples of com.packtpub.java7.concurrency.chapter6.recipe03.task.Producer


     * Executes the threads. There is a problem with this
     * block of code. It uses the run() method instead of
     * the start() method.
     */
    for (int i=0; i<10; i++) {
      Task task=new Task(lock);
      Thread thread=new Thread(task);
      thread.run();
    }

  }
View Full Code Here


  public static void main(String[] args) throws Throwable {
   
    /*
     * Create a Test object
     */
    ProducerConsumerTest test=new ProducerConsumerTest();
   
    /*
     * Execute the test
     */
    System.out.printf("Main: Starting the test\n");
View Full Code Here

  /**
   * @param args
   */
  public static void main(String[] args) {
   
    TaskAtomic atomicTask=new TaskAtomic();

    TaskLock lockTask=new TaskLock();
   
    int numberThreads=50;
    Thread threads[]=new Thread[numberThreads];
View Full Code Here

   */
  public static void main(String[] args) {
   
    TaskAtomic atomicTask=new TaskAtomic();

    TaskLock lockTask=new TaskLock();
   
    int numberThreads=50;
    Thread threads[]=new Thread[numberThreads];
    Date begin,end;
   
View Full Code Here

    Thread threads[]=new Thread[1000];
    Date start,end;
   
    start=new Date();
    for (int i=0; i<threads.length; i++) {
      Task task=new Task();
      threads[i]=new Thread(task);
      threads[i].start();
    }
   
    for (int i=0; i<threads.length; i++) {
      try {
        threads[i].join();
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
    }
    end=new Date();
    System.out.printf("Main: Threads: %d\n",(end.getTime()-start.getTime()));
   
    ThreadPoolExecutor executor=(ThreadPoolExecutor)Executors.newCachedThreadPool();
   
    start=new Date();
    for (int i=0; i<threads.length; i++) {
      Task task=new Task();
      executor.execute(task);
    }
    executor.shutdown();
    try {
      executor.awaitTermination(1, TimeUnit.DAYS);
View Full Code Here

  /**
   * @param args
   */
  public static void main(String[] args) {
    int array[]=new int[100000];
    Task task=new Task(array);
    ThreadPoolExecutor executor=(ThreadPoolExecutor)Executors.newCachedThreadPool();
   
    Date start,end;
    start=new Date();
    executor.execute(task);
View Full Code Here

      e.printStackTrace();
    }
    end=new Date();
    System.out.printf("Main: Executor: %d\n",(end.getTime()-start.getTime()));
   
    TaskFJ taskFJ=new TaskFJ(array,1,100000);
    ForkJoinPool pool=new ForkJoinPool();
    start=new Date();
    pool.execute(taskFJ);
    pool.shutdown();
    try {
View Full Code Here

  /**
   * @param args
   */
  public static void main(String[] args) {
    for (int i=0; i<20; i++){
      Task task=new Task();
      Thread thread=new Thread(task);
      thread.start();
    }

  }
View Full Code Here

  @Override
  public void run() {

    System.out.printf("%s: Getting the connection...\n",Thread.currentThread().getName());
    DBConnectionOK connection=DBConnectionOK.getConnection();
    System.out.printf("%s: End\n",Thread.currentThread().getName());
  }
View Full Code Here

  public static void main(String[] args) {
    // Create the pool
    ForkJoinPool pool=new ForkJoinPool();
   
    // Create three FolderProcessor tasks for three diferent folders
    FolderProcessor system=new FolderProcessor("C:\\Windows", "log");
    FolderProcessor apps=new FolderProcessor("C:\\Program Files","log");
    FolderProcessor documents=new FolderProcessor("C:\\Documents And Settings","log");
   
    // Execute the three tasks in the pool
    pool.execute(system);
    pool.execute(apps);
    pool.execute(documents);
   
    // Write statistics of the pool until the three tasks end
    do {
      System.out.printf("******************************************\n");
      System.out.printf("Main: Parallelism: %d\n",pool.getParallelism());
      System.out.printf("Main: Active Threads: %d\n",pool.getActiveThreadCount());
      System.out.printf("Main: Task Count: %d\n",pool.getQueuedTaskCount());
      System.out.printf("Main: Steal Count: %d\n",pool.getStealCount());
      System.out.printf("******************************************\n");
      try {
        TimeUnit.SECONDS.sleep(1);
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
    } while ((!system.isDone())||(!apps.isDone())||(!documents.isDone()));
   
    // Shutdown the pool
    pool.shutdown();
   
    // Write the number of results calculate by each task
    List<String> results;
   
    results=system.join();
    System.out.printf("System: %d files found.\n",results.size());
   
    results=apps.join();
    System.out.printf("Apps: %d files found.\n",results.size());
   
    results=documents.join();
    System.out.printf("Documents: %d files found.\n",results.size());
   

  }
View Full Code Here

TOP

Related Classes of com.packtpub.java7.concurrency.chapter6.recipe03.task.Producer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.