akka.dispatch
Class NullMessage$

java.lang.Object
  extended by akka.dispatch.NullMessage$
All Implemented Interfaces:
java.io.Serializable, scala.Equals, scala.Product

public class NullMessage$
extends java.lang.Object
implements scala.Product, scala.Serializable

This message is sent directly after the Supervise system message in order to form a barrier wrt. the first real message sent by the child, so that e.g. Failed() cannot overtake Supervise(). Processing this does nothing.

Detailed explanation:

The race happens because Supervise and Failed may be queued between the parent's check for system messages and dequeue(). Thus, if the parent processes the NullMessage first (by way of that tiny race window), it is guaranteed to then find the Supervise system message in its mailbox prior to turning its attention to the next real message.

See Also:
Serialized Form

Field Summary
static NullMessage$ MODULE$
          Static reference to the singleton instance of this Scala object.
 
Constructor Summary
NullMessage$()
           
 
Method Summary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface scala.Product
productArity, productElement, productIterator, productPrefix
 
Methods inherited from interface scala.Equals
canEqual, equals
 

Field Detail

MODULE$

public static final NullMessage$ MODULE$
Static reference to the singleton instance of this Scala object.

Constructor Detail

NullMessage$

public NullMessage$()