Example #1
0
        public override Task <R <T[], CommandError> > Send <T>(TsCommand com)
        {
            using var wb = new WaitBlock(msgProc.Deserializer);
            lock (sendQueueLock)
            {
                msgProc.EnqueueRequest(wb);
                SendRaw(com.ToString());
            }

            return(wb.WaitForMessageAsync <T>());
        }
Example #2
0
        public override R <T[], CommandError> Send <T>(Ts3Command com)       // Synchronous
        {
            using (var wb = new WaitBlock(msgProc.Deserializer, false))
            {
                lock (sendQueueLock)
                {
                    msgProc.EnqueueRequest(wb);
                    SendRaw(com.ToString());
                }

                return(wb.WaitForMessage <T>());
            }
        }