Microsoft.Protocols.TestTools.StackSdk.RemoteDesktop.Rdpedyc.RdpedycServer.ExpectDVCCapResponsePDU C# (CSharp) Méthode

ExpectDVCCapResponsePDU() private méthode

Expect a DVC Capabilities Response PDU
private ExpectDVCCapResponsePDU ( TimeSpan timeout, DynamicVC_TransportType transportType = DynamicVC_TransportType.RDP_TCP ) : CapsRespDvcPdu
timeout TimeSpan Timeout
transportType DynamicVC_TransportType Transport type
Résultat CapsRespDvcPdu
        private CapsRespDvcPdu ExpectDVCCapResponsePDU(TimeSpan timeout, DynamicVC_TransportType transportType = DynamicVC_TransportType.RDP_TCP)
        {
            DateTime endTime = DateTime.Now + timeout;
            while (DateTime.Now < endTime)
            {
                if (unprocessedDVCPacketBuffer.Count > 0)
                {
                    lock (unprocessedDVCPacketBuffer)
                    {
                        if (unprocessedDVCPacketBuffer.Count > 0)
                        {
                            for (int i = 0; i < unprocessedDVCPacketBuffer.Count; i++)
                            {
                                if (transportType == unprocessedDVCPacketBuffer[i].TransportType
                                    && unprocessedDVCPacketBuffer[i].PDU is CapsRespDvcPdu)
                                {
                                    CapsRespDvcPdu capResp = unprocessedDVCPacketBuffer[i].PDU as CapsRespDvcPdu;
                                    unprocessedDVCPacketBuffer.RemoveAt(i);
                                    return capResp;
                                }
                            }
                        }
                    }
                }

                Thread.Sleep(this.waitInterval);
            }
            return null;
        }