Source/NFX.Erlang/Connect/ErlMbox.cs
/// <summary>
/// Used to break all known links to this mbox
/// </summary>
Used to break all known links to this mbox
Used to break all known links to this mbox
internal void BreakLinks(ErlAtom fromNode, IErlObject reason)
    {
      var links = m_Links.Remove(fromNode);
      foreach (var link in links)
        if (link.HasPid)
          m_Node.Deliver(ErlMsg.Exit(m_Self, link.Pid, reason));
        else
          m_Node.Deliver(new ErlConnectionException(fromNode, reason));
      foreach (var m in m_Monitors.Where(o => o.Value.Node == fromNode)
                                  .Where(m => m_Monitors.Remove(m.Key)))
        Deliver(new ErlConnectionException(fromNode, reason));
    }
internal void BreakLinks ( ErlAtom fromNode , IErlObject reason ) { var links = m_Links . Remove ( fromNode ) ; foreach ( var link in links ) if ( link . HasPid ) m_Node . Deliver ( ErlMsg . Exit ( m_Self , link . Pid , reason ) ) ; else m_Node . Deliver ( new ErlConnectionException ( fromNode , reason ) ) ; foreach ( var m in m_Monitors . Where ( o => o . Value . Node == fromNode ) . Where ( m => m_Monitors . Remove ( m . Key ) ) ) Deliver ( new ErlConnectionException ( fromNode , reason ) ) ; }
Used to break all known links to this mbox
Used to break all known links to this mbox
fromNode
ErlAtom
reason
IErlObject