anchor.diff:    static RawReceivePort _receivePort;
     static SendPort _sendPort;
     static int _scheduledWakeupTime;
  +  // Keep track whether at least one message is pending in the event loop. This
  +  // way we do not have to notify for every pending _firstZeroTimer.
  +  static var _messagePending = false;
  +
     static bool _handlingCallbacks = false;
   
     Function _callback;  // Closure to call when timer fires. null if canceled.
  
positive.code:         _createTimerHandler();
        }
        if (_firstZeroTimer != null) {
          _sendPort.send(null);
        } else {
          var wakeupTime = _heap.first._wakeupTime;
          if ((_scheduledWakeupTime == null) ||
  
negative.code: 
    // Creates a receive port and registers an empty handler on that port. Just
    // the triggering of the event loop will ensure that timers are executed.
    static _ignoreMessage(_) {
      _messagePending = false;
    }
  
    static void _createTimerHandler() {
      assert(_receivePort == null);
      _receivePort = new RawReceivePort(_ignoreMessage);
      _sendPort = _receivePort.sendPort;
      _scheduledWakeupTime = null;
      _messagePending = false;
    }
  
    static void _shutdownTimerHandler() {
  