신뢰하지 못하는 코드를 안전하게 수행하기 위해 eclipse에서 제공하는 기능이다. 예외를 지역적으로 처리하는 전략을 선택했다고 해도 3rd 파티 라이브러리를 수행하다 발생하는 예외에 대한 제어가 없기 때문에 이를 처리하지 못하고 최상위로 보내는 문제가 있다. Eclipse에서는 이런 문제를 다루기 위해서 ISafeRunnable을 이용한다.
Platform.run(ISafeRunnable) SafeRunner.run(ISafeRunnable)을 이용해서 SafeRunnable을 수행하면 플랫폼은 모든 예외를 catch해서 handleException() 메소드로 처리한다. 플랫폼이 기본적으로 해당 예외에 대해서 로그(로그파일 경로 참고)를 기록하므로 여기서는 로그를 기록하는 작업보다는 가능한 문제로부터의 복구에 중점을 두고 작업해야 한다.
로그파일 경로: eclipse_runtime경로/.metadata/.log