コード例 #1
0
        private async void InitializeForJobAsync(Job job)
        {
            using (Trace.Log())
            {
                initialized = false;
                activeJob   = job;

                InitializationResult initResult;

                try
                {
                    initResult = await connection.Initialize(job.Config).ConfigureAwait(true);

                    if (initResult.success)
                    {
                        Console.WriteLine($"Agent initialized {Identifier}");

                        initialized = true;
                        Capacity    = initResult.capacity;
                        CapacityChanged?.Invoke(this, Capacity);

                        RequestTasks();
                        return;
                    }
                }
                catch (Exception e)
                {
                    initResult = new InitializationResult
                    {
                        success      = false,
                        errorMessage = e.ToString()
                    };
                }

                Console.WriteLine($"Agent initialization error {Identifier}");
                Console.WriteLine(initResult.errorMessage);

                dispatcher.ReleaseAgent(Identifier);
            }
        }
コード例 #2
0
 private void OnCapacityChanged(int prevCapacity, int newCapacity)
 {
     Logger.Log(LogLevel.Debug, "[{0}] the capacity has changed from {1} bytes to {2} bytes.", Name, prevCapacity, newCapacity);
     CapacityChanged?.Invoke(this, new CapacityEventArgs(prevCapacity, newCapacity));
 }