/// <summary>Snippet for UpdateSpecialistPoolAsync</summary> public async Task UpdateSpecialistPoolAsync() { // Snippet: UpdateSpecialistPoolAsync(SpecialistPool, FieldMask, CallSettings) // Additional: UpdateSpecialistPoolAsync(SpecialistPool, FieldMask, CancellationToken) // Create client SpecialistPoolServiceClient specialistPoolServiceClient = await SpecialistPoolServiceClient.CreateAsync(); // Initialize request argument(s) SpecialistPool specialistPool = new SpecialistPool(); FieldMask updateMask = new FieldMask(); // Make the request Operation <SpecialistPool, UpdateSpecialistPoolOperationMetadata> response = await specialistPoolServiceClient.UpdateSpecialistPoolAsync(specialistPool, updateMask); // Poll until the returned long-running operation is complete Operation <SpecialistPool, UpdateSpecialistPoolOperationMetadata> completedResponse = await response.PollUntilCompletedAsync(); // Retrieve the operation result SpecialistPool result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <SpecialistPool, UpdateSpecialistPoolOperationMetadata> retrievedResponse = await specialistPoolServiceClient.PollOnceUpdateSpecialistPoolAsync(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result SpecialistPool retrievedResult = retrievedResponse.Result; } // End snippet }