Esempio n. 1
0
        public override void Send(FrameStream frame, bool reliable = false)
        {
            UDPPacketComposer composer = new UDPPacketComposer();

            // If this message is reliable then make sure to keep a reference to the composer
            // so that there are not any run-away threads
            if (reliable)
            {
                composer.completed += ComposerCompleted;
                pendingComposers.Add(composer);
            }

            composer.Init(this, ServerPlayer, frame, reliable);
        }
        public override void Send(FrameStream frame, bool reliable = false)
        {
            UDPPacketComposer composer = new UDPPacketComposer();

            // If this message is reliable then make sure to keep a reference to the composer
            // so that there are not any run-away threads
            if (reliable)
            {
                // Use the completed event to clean up the object from memory
                composer.completed += ComposerCompleted;
                pendingComposers.Add(composer);
            }

            //TODO: New constructor for setting up callbacks before regular constructor (as seen above)
            composer.Init(this, Server, frame, reliable);
        }
        public override void Send(FrameStream frame, bool reliable = false)
        {
            UDPPacketComposer composer = new UDPPacketComposer();

            //如果这个信息是可靠的,那么一定要保持对作曲家的引用
            //这样就没有任何失控的线程
            // If this message is reliable then make sure to keep a reference to the composer
            // so that there are not any run-away threads
            if (reliable)
            {
                //使用完成的事件从内存中清理对象
                // Use the completed event to clean up the object from memory
                composer.completed += ComposerCompleted;
                pendingComposers.Add(composer);
            }

            // TODO:在正则构造函数之前设置回调的新构造函数(如上所示)
            //TODO: New constructor for setting up callbacks before regular constructor (as seen above)
            composer.Init(this, Server, frame, reliable);
        }