Repaso de mecanismo de sincronización

Repaso de mecanismo de sincronización

University

6 Qs

quiz-placeholder

Similar activities

Observación de los derechos humanos

Observación de los derechos humanos

University - Professional Development

10 Qs

IAS en la Toma de decisión y Escenarios de Factibilidad

IAS en la Toma de decisión y Escenarios de Factibilidad

University

11 Qs

Estimaciones y Tabla de Actividades- Actividades de un Diagrama

Estimaciones y Tabla de Actividades- Actividades de un Diagrama

University

10 Qs

Objectos de la clase Abrams

Objectos de la clase Abrams

KG - University

10 Qs

ELEMENTOS BÁSICOS DE UN PROYECTO DE INVERSIÓN - GRUPO 4

ELEMENTOS BÁSICOS DE UN PROYECTO DE INVERSIÓN - GRUPO 4

University

11 Qs

FENOMENO DE ONDAS

FENOMENO DE ONDAS

University

10 Qs

Ríos, lagos y manantiales del Valle de México.

Ríos, lagos y manantiales del Valle de México.

University

10 Qs

Test de toxicidad

Test de toxicidad

University

10 Qs

Repaso de mecanismo de sincronización

Repaso de mecanismo de sincronización

Assessment

Quiz

Other

University

Medium

Created by

Guillermo Echichure

Used 4+ times

FREE Resource

6 questions

Show all answers

1.

MULTIPLE CHOICE QUESTION

20 sec • 3 pts

Media Image

¿Cuál de las siguientes opciones muestra el uso correcto de la clase Monitor para sincronización de hilos?

monitor.Enter(lockObj) try { }

finally

{

lock.Exit(lockObj)

}

Monitor.Enter(lockObj) try

{

Monitor.Exit(lockObj)

}

finally

{ }

try

{

Monitor.Exit(lockObj)

}

finally

{

Monitor.Enter(lockObj)

}

Monitor.Enter(lockObj) try

{

}

finally

{

Monitor.Exit(lockObj)

}

2.

MULTIPLE CHOICE QUESTION

30 sec • 5 pts

Media Image

Elija la afirmación correcta acerca de lock y monitor:

Es recomendable tener todo el código crítico de un programa dentro de un lock o monitor para asegurar la sincronización completa de los hilos.

Tener mucho código dentro de un lock o monitor no es buena práctica. Lo mejor es tener la mínima cantidad de código dentro del lock para limitar el tiempo que esperan los otros hilos.

Mientras más código coloques dentro de un lock, más seguro será el acceso a los recursos compartidos.

Para evitar errores de sincronización, es buena práctica mantener los bloqueos (lock o monitor) activos durante todo el ciclo de vida de un hilo.

Answer explanation

Es recomendable tener todo el código crítico de un programa dentro de un lock o monitor para asegurar la sincronización completa de los hilos.

  • Error: Tener mucho código dentro de un lock o monitor reduce la eficiencia al aumentar el tiempo que los hilos deben esperar.

    Mientras más código pongas dentro de un lock, más seguro será el acceso a los recursos compartidos.

    • Error: Aumentar la cantidad de código dentro de un lock no incrementa la seguridad, sino que aumenta las probabilidades de bloqueos y afecta el rendimiento.

      Para evitar errores de sincronización, es buena práctica mantener los bloqueos (lock o monitor) activos durante todo el ciclo de vida de un hilo.

      • Error: Mantener bloqueos por mucho tiempo no es eficiente ni necesario, ya que los recursos compartidos deben protegerse solo durante la operación crítica.

3.

MULTIPLE CHOICE QUESTION

20 sec • 3 pts

Media Image

¿Que comportamiento equivalente tiene este código ?

lock(myLock) 

     //Critical code 

Monitor.Enter(myLock); 

try 

     // Critical code 

finally 

      Monitor.Exit(myLock); 

}

Monitor.Enter(myLock);

try

{

// Critical code

}

catch

{

Monitor.Exit(myLock);

}

Monitor.Enter(myLock); // Critical code Monitor.Exit(myLock);

Monitor.Enter(myLock); try

{

// Critical code Monitor.Exit(myLock);

}

finally

{

// Some cleanup code

}

4.

MULTIPLE CHOICE QUESTION

30 sec • 3 pts

Media Image

Elija la afirmación correcta acerca de: Mutex, Lock y Monitor

Lock > Monitor > Mutex

Monitor > Lock = Mutex

Mutex = Monitor > Lock

Mutex > Monitor > Lock

5.

MULTIPLE CHOICE QUESTION

30 sec • 5 pts

Media Image

Los semaforos .....

solo permiten un hilo a la vez en la sección crítica

son similares a monitor y a mutex, pero te dejan definir un límite de threads que pueden ingresar a la zona de mutua exclusión (patio).

son ideales para cualquier problema de sincronización, ya que son muy flexibles

son más complejos que los mutex y no requieren variables de condición

6.

MULTIPLE CHOICE QUESTION

30 sec • 3 pts

Media Image

lock (obj)
{

Procesar();

}
¿Que código produce el mismo comportamiento utilizando semáforos ?

Media Image
Media Image
Media Image
Media Image