can i know the Thread runnable class attributes in java?

Posted by dori naji on Stack Overflow See other posts from Stack Overflow or by dori naji
Published on 2012-03-23T22:37:22Z Indexed on 2012/03/23 23:30 UTC
Read the original article Hit count: 265

Filed under:
|
|

probability this question have been asked before but i cant find anything in my searching mechanism. I am trying to create a multiple threads, in an array list but i want to retrieve them from an arraylist and filter them by the attribute of w1 i used in my code. any ideas ?

    w1 = new FirstWorker(ProductsList, OrdersList, s);
    FirstWorkerThread = new Thread(w1);
    ThreadArrayList.add(FirstWorkerThread);
    //I know i cant do the code below but i want to do that how ?
    for(Thread x : ThreadArrayList){
    x.ProductsList
    }

this is FirstWorker class

import java.lang.String;
import java.util.HashMap;

/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */
/**
 *
 * @author Dimitris
 */
public class FirstWorker extends Thread implements Runnable  {

    private OrderList orderlist;
    private ProductList productlist;
    private String Worker;
    boolean Stop;
    private int speed = 1000;

    public FirstWorker(ProductList productlist, OrderList orderlist, String Worker) {
        this.productlist = productlist;
        this.orderlist = orderlist;
        this.Worker = Worker;
        this.Stop = true;
    }

    public void run() {
        if (Stop == true) {
            try {
                Thread.sleep(100);
            } catch (InterruptedException e) {
            }

            while (orderlist.returnLengthofOrder() != 0) {

                if (Thread.interrupted()) {
                    System.out.println("I am in the thread inturrupt");
                    // We've been interrupted: no more crunching.
                    return;
                }

                if (orderlist.getDone() == true) {
                } else if (orderlist.getDone() == false) {
                    orderlist.setDoneTrue();

                    orderlist.Purchased(Worker);
                    orderlist.setDoneFalse();

                    try {
                        Thread.sleep(this.speed);
                    } catch (InterruptedException e) {
                        return;
                    }


                }
            }

        }




    }

    public void setWork() {
        Stop = false;
    }

    public void setSpeed(int speed) {
        this.speed = speed;
    }
}

© Stack Overflow or respective owner

Related posts about java

Related posts about multithreading