C# 消息发送机制


public class ObserverParam
{
    public string id;
    public object data;
    public object isWho;
}


public class Observable
{
    private CSLList observers = new CSLList();
    public void addObserver(Observer aObserver)
    {
        if (aObserver == null)
        {
            return;
        }

        observers.Add(aObserver);
    }

    public void removeObserver(Observer aObserver)
    {
        if (observers == null)
        {
            return;
        }

        observers.Remove(aObserver);
    }

    public void notifyObservers(string id, object data)
    {
        if (observers == null)
        {
            return;
        }

        var param = new ObserverParam();
        param.id = id;
        param.data = data;
        param.isWho = this;

        for (int i=0; i         {
            observers[i].updateSelf(param);
        }
    }
}


public interface Observer
{
    void updateSelf(ObserverParam obj);
}

你可能感兴趣的:(u3d)