2012-06-13 3 views
2

현재 GUI를 제공하고 네트워크를 통해 서비스에 액세스하는 Java 기반 다중 스레드 응용 프로그램을 개발하고 있습니다.다중 스레드 Java 기반 응용 프로그램의 오류보고

Java 기반 시스템에서 오류를보고하기위한 패턴, 모범 사례, 라이브러리, 프레임 워크 또는 API가 있습니까?

+1

"다중 스레드 Java 기반 응용 프로그램의 오류보고"좀 더 자세하게 설명해 주시겠습니까? 실제로 다중 스레드 응용 프로그램이 필요합니다. – amicngh

+0

나는 새로운 사용자이기 때문에 FAQ를 읽는 것이 좋습니다. 특히 http://stackoverflow.com/faq#dontask는 SO에서 질문 할 수없는 종류의 질문을 설명합니다. – serg10

답변

2

스레드의 오류를 처리하는 데 사용되는 Thread.UncaughtExceptionHandler이 있습니다.

Thread t = new Thread(task); 

// add exception handler 
t.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler(){ 
    @Override 
    public void uncaughtException(Thread t, Throwable e) { 
    // do exception handling 
    } 
}); 

t.start(); 
1

당신은 쓸 수 있습니다 Task Tracker 아무것도 관찰자 DesignPatter의 구현이없는.

public class TaskTracker { 
private final List<ErrorListener> listeners = new ArrayList<ErrorListener>(); 

public Runnable wrap(final Runnable r) { 
    return new Runnable() { 
     public void run() { 
      try { r.run(); } 
      catch (Throwable t) { 
       for (ErrorListener el : listeners) 
        el.error(t, this); 
      } 
     } 
    }; 
} 

public void addListener(ErrorListener el) { listeners.add(el); } 

public void removeListener(ErrorListener el) { listeners.remove(el); } 

public static interface ErrorListener { 
    void error(Throwable t, Runnable r); 
} 
} 
관련 문제