Thiago Russo
Quiz by , created more than 1 year ago

70-483 C# (Exame 70-483) Quiz on Quiz Program Flow, created by Thiago Russo on 24/04/2016.

18
0
0
Thiago Russo
Created by Thiago Russo about 8 years ago
Close

Quiz Program Flow

Question 1 of 15

1

Você tem um monte de itens que precisam ser processados. Para cada item, você precisa executar um cálculo complexo. Que técnica você deve usar?

Select one of the following:

  • Você cria uma Task para cada item e, em seguida, aguarde até que todas as tarefas terminem.

  • Você usa Parallel.For para processar todos os itens simultaneamente.

  • Você usa async/ await para processar todos os itens simultaneamente.

  • Você pode adicionar todos os itens em um BlockingCollection e processá-los em uma thread criada pela classe Thread.

Explanation

Question 2 of 15

1

Você está criando uma consulta complexa que não requer nenhuma ordem particular e pretende executá-lo em paralelo. Que método você deve usar?

Select one of the following:

  • AsParallel

  • AsSequential

  • AsOrdered

  • WithDegreeOfParallelism

Explanation

Question 3 of 15

1

Você está trabalhando em um aplicativo ASP.NET que recupera alguns dados de outro servidor web e em seguida grava a resposta ao banco de dados. Se usa async/ await?

Select one of the following:

  • Não, as duas operações dependem de fatores externos. Você precisa esperar antes de serem finalizados.

  • Não, em um aplicativo de servidor que você não tem que usar async/await. É apenas para a capacidade de resposta no cliente.

  • Sim, isso irá liberar sua thread para servir outras requisições enquanto espera para o I / O para completo.

  • Sim, isso colocar sua thread para "dormir" (sllep) enquanto espera por I / O, para que ele não usa qualquer CPU.

Explanation

Question 4 of 15

1

Você quer sincronizar o acesso usando uma instrução lock. Em qual membro você travar?

Select one of the following:

  • this

  • string _lock = "myLock"

  • int _lock = 42;

  • objeto _lock = new Object ();

Explanation

Question 5 of 15

1

Você precisa implementar o cancelamento de uma tarefa de longa duração. Qual objeto que você passar para a tarefa?

Select one of the following:

  • CancellationTokenSource

  • CancellationToken

  • variável booleana isCancelled

  • Volatile

Explanation

Question 6 of 15

1

Você está implementando uma máquina de estado em uma classe multithread. Você precisa verificar o estado atual, e alterá-lo para o novo um em cada etapa. Qual o método que você usa?

Select one of the following:

  • Volatile.Write (currentState ref)

  • Interlocked.CompareExchange (ref currentState, ref newState, xpectedState)

  • Interlocked.Exchange (ref currentState, newState)

  • Interlocked.Decrement (ref newState)

Explanation

Question 7 of 15

1

1. Você precisa iterar sobre uma coleção em que você sabe o número de itens. Você precisa remover certos itens da coleção. Qual é a afirmação que você usa?

Select one of the following:

  • switch

  • foreach

  • for

  • goto

Explanation

Question 8 of 15

1

Você tem um monte de checks (verificações) em seu aplicativo para valores nulos. Se um valor não for nulo, você quer chamar um método nele. Você quer simplificar o seu código. Que técnica você usa?

Select one of the following:

  • for

  • operador Conditional

  • operador Null-coalescing

  • O comportamento de short-circuit e o operador

Explanation

Question 9 of 15

1

Você está processando alguns dados de através da rede. Você usa um método hasNext e Read para recuperar os dados. Você precisa executar algum código em cada item. O que você usa?

Select one of the following:

  • for

  • foreach

  • while

  • do-while

Explanation

Question 10 of 15

1

Você tem um método private em sua classe e você quer fazer chamada do método possível por
certos chamadores. O que você faz?

Select one of the following:

  • fazer o método ficar "public"

  • usar um evento por fora, pode ser notificado quando o método for executado.

  • Usar um método que retorna um delegate para chamadores autorizados.

  • Declarar o método privado como um lambda.

Explanation

Question 11 of 15

1

Você tem um evento declarado em sua classe, e você quer que os usuários fora de sua classe possam provocar/incocar este evento. O que você faz?

Select one of the following:

  • tornar o evento "public"

  • Adicione um método público à classe que gera o evento.

  • Use um delegate público em vez de um evento.

  • Use um assessor de evento personalizado para dar acesso a usuários externos.

Explanation

Question 12 of 15

1

Você está usando um delegate multicast com vários assinantes. Você quer ter certeza de que todos os assinantes sejam notificados, mesmo que uma exceção é lançada. O que você faz?

Select one of the following:

  • Invocar manualmente os eventos usando GetInvocationList.

  • chamar manualmente o evento em um try / catch.

  • Nada. Este é o comportamento padrão.

  • Deixe assinantes retornar verdadeiro ou falso ao invés de lançar uma exceção.

Explanation

Question 13 of 15

1

Você está validando/checking os argumentos de seu método para valores nulos ilegais. Se você encontrar um valor nulo, que exceção você joga?

Select one of the following:

  • ArgumentException

  • InvalidOperationException

  • NullReferenceException

  • ArgumentNullException

Explanation

Question 14 of 15

1

Seu código pega (catch) um IOException quando um arquivo não pode ser acessado. Você quer fornecer mais informações para o chamador de seu código. O que você faz?

Select one of the following:

  • Alterar a mensagem de exceção e relançar a exceção

  • lançar uma nova exceção com informações extra que tem a IOException como InnerException

  • lançar uma nova exceção com informações mais detalhadas.

  • Use throw para relançar (rethrow) a exceção e economizar a pilha de chamadas.

Explanation

Question 15 of 15

1

Você está criando uma exceção personalizada chamado LogonFailedException. Quais construtores você deve pelo menos acrescentar? (Escolha todos os que se aplicam).

Select one or more of the following:

  • LogonFailed ()

  • LogonFailed (mensagem de texto)

  • LogonFailed (mensagem String, Exception innerException)

  • LogonFailed (Exceção innerException)

Explanation