Ausnahmebehandlung in Falle von Thread.sleep und wait () - Methode im Falle von Threads

War ich versucht zu schreiben, eine Producer-Consumer-Modell (Erzeuger-thread und Verbraucher-Thread in java)

Ich Frage mich, wie man mit den InterruptedException geworfen wird durch Thread.sleep - Methode und die Object Klasse wait() Methode

package producerconsumer;

import java.util.ArrayList;

public class Consumer implements Runnable {

    ArrayList<Integer> container;

    @Override
    public void run() {
        while(true){
        System.out.println("Consumer Thread Running");
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        if(null==container){
            System.out.println("container is null");
        }
        //Removing values from Arraylist
        synchronized (container) {
            if(container.size()==0){
                try {
                    container.wait();
                } catch (InterruptedException e) {
                    //How to tackle this exception
                    e.printStackTrace();
                }
            }
            Integer removedInteger = container.remove(container.size()-1);
            System.out.println("removedInteger..."+removedInteger);
        }
        }
    }

    public void setContainer(ArrayList<Integer> container) {
        this.container = container;
    }
}

Dies ist ein Beispiel, das ich genommen habe, In diesem Beispiel gibt es möglicherweise keine Notwendigkeit zu kümmern, diese Ausnahme (Meine Vermutung).

, Aber ich wollte wissen was das sein könnte verschiedene Szenarien möglich, in denen wir brauchen, um diese zu bewältigen Ausnahme.

mögliche Duplikate von der Umgang mit InterruptedException in Java
Vielen Dank für die Annahme, ein guter link. Lassen Sie mich in diese Aussehen.

InformationsquelleAutor Sunny Gupta | 2012-04-25

Schreibe einen Kommentar