Request a firing of the given actor as soon as possible. If this method is called from within the main simulation thread, then this will result in the actor being fired at the current time. This method may also be invoked from a thread other than the main simulation thread, making it useful for actors that perform asynchronous processing, such as waiting for data in another thread. In these cases, calling fireAt(actor, getCurrentTime()) is not sufficient, since there is no way for an asynchronous thread to ensure that time does not advance in the model. When invoked from an asynchronous thread, this method will attempt to fire the actor at the earliest time that this director is fired. This base class checks to see if the director is embedded within a hierarchical model and, if so, calls the fireAtCurrentTime method of its executive director. Derived classes may should extend this behavior to ensure that the given actor is fired as soon as possible.
Note that this method is not made abstract to facilitate the use of the test suite.
@param actor The actor to be fired.
@exception IllegalActionException If this method is calledbefore the model is running.