Esempio n. 1
0
        protected override JobHandle OnUpdate(JobHandle inputDeps)
        {
            var cleanDeps = new ConsumeJob {
                CmdBuffer = cmdBufferSystem.CreateCommandBuffer().ToConcurrent()
            }.ScheduleSingle(this, inputDeps);

            cmdBufferSystem.AddJobHandleForProducer(cleanDeps);
            return(cleanDeps);
        }
Esempio n. 2
0
        public async Task SendActivateRequest(ActivateJobsRequest request, ConsumeJob consumer, DateTime?requestTimeout = null, CancellationToken?cancellationToken = null)
        {
            var activateRequestTimeout = requestTimeout ?? CalculateRequestTimeout(request);

            using (var stream = client.ActivateJobs(request, deadline: activateRequestTimeout))
            {
                var responseStream = stream.ResponseStream;

                while (await MoveNext(responseStream, cancellationToken))
                {
                    var currentResponse = responseStream.Current;
                    var response        = new ActivateJobsResponses(currentResponse);
                    await consumer.Invoke(response);
                }
            }
        }