Пример #1
0
        public override Task Run(object state)
        {
            _taskSource = new TaskCompletionSource <bool>();
            var task = _taskSource.Task;

            Task.Factory.StartNew(() =>
            {
                try {
                    var host    = _server.CreateHost();
                    host.Worker = this;

                    host.ProcessRequest();
                }
                catch (Exception e) {
                    _taskSource.SetException(e);
                }
            });

            return(task);
        }