JanosVM v1.0 API

edu.utah.janosvm.sys
Class TeamEjectionException

java.lang.Object
  |
  +--java.lang.Throwable
        |
        +--java.lang.Exception
              |
              +--edu.utah.janosvm.sys.TeamEjectionException
All Implemented Interfaces:
java.io.Serializable

public final class TeamEjectionException
extends java.lang.Exception

Exception thrown when a thread is forcefully thrown from a team during a visit. A thread can be forcefully ejected when it fails to allocate memory and the VM cannot make progress without the memory.

NOTE: This exception can be thrown by any allocation, Object.wait() or throw statement in the code that executes during a visit, not just the switchTo or returnFrom methods.

NOTE: This exception is NOT CATCHABLE in the context of the team from which the thread is being ejected. The thread proceeds immediately to the visit boundary, and then the exception is handled normally from that point on. For example:

 try
 {
   team.switchTo();
   try
   {
     VMInstance.crash(); // Force a TeamEjectionException
   }
   catch(TeamEjectionException e)
   {
     // This won't run.
   }
   finally
   {
     // This won't run.
   }
   team.returnFrom(); // Here is where control is returned.
 }
 catch(TeamEjectionException e)
 {
   // This will run
 }
 

See TeamReservation for more details on visits and the special handling of code running during a visit.

Author:
Tim Stack, Utah Janos Team
See Also:
Serialized Form

Fields inherited from class java.lang.Throwable
backtrace, cause, message, serialVersionUID, setCause
 
Constructor Summary
TeamEjectionException()
           
TeamEjectionException(java.lang.String msg)
           
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, initCause, printStackTrace, printStackTrace, printStackTrace, printStackTrace0, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait, wait0
 

Constructor Detail

TeamEjectionException

public TeamEjectionException()

TeamEjectionException

public TeamEjectionException(java.lang.String msg)

JanosVM v1.0 API

This documentation is Copyright (C) 2000-2003 The University of Utah. All Rights Reserved. See the documentation license for distribution terms and restrictions.
Documentation, software, and mailing lists for the JanosVM can be found at the Janos Project web page: http://www.cs.utah.edu/flux/janos/
Generated on Feb 13, 2003