Nota:
- La solución de las siguientes preguntas pueden ayudarte a aprobar el módulo, siempre y cuando sean las mismas que me mostraron.
- Dos asteriscos (**) significa Alternativa Correcta.
- Alternativas sin marcar significa que me equivoque en la respuesta, por consiguiente depende únicamente de tu conocimiento. Si logras identificar la alternativa correcta compártela en este Sitio Web y si te tocan nuevas preguntas también. Gracias!
Hilos (parte 2)
1. En equipos con varios núcleos, en que los períodos de tiempo de espera deben ser breves y en que la contención es mínima, se recomienda utilizar __________
ReaderWriterLockSlim
Mutex
Monitor
SemaphoreSlim
**SpinLock
2. El multithreading resuelve problemas de rendimiento y de capacidad de respuesta, pero al hacerlo también crea nuevos problemas, como _______________ y ______________
Consumo de memoria
**Interbloqueos
Recalentamiento de la CPU
**Condiciones de carrera
Costo de hardware
3. Un interbloqueo tiene lugar cuando
el número de CPUs (o cores) es excedido por el número de threads en ejecución
cuando un recurso queda bloqueado por un thread que ya no existe pues la aplicación se ha cerrado abruptamente
**dos threads intentan bloquear un recurso que ya ha bloqueado uno de estos threads
dos threads han bloqueado un recursos que ya ha sido bloqueado por uno de estos threads
dos recursos son accedidos por el mismo thread en el mismo instante
4. La planificación de los threads esta relacionada directamente con la cantidad de lineas por segundo generadas por un programador
TRUE
FALSE
NO APLICA
5. Ejecutar el programa muchas veces genera distintos resultados y no es posible predecir el resultado de una ejecución específica. Es un caso sospechoso de sufrir
Dead Lock
**Condición de carrera
Ataque de números aleatorios
Semilla aleatoria en metástasis
Condición de carrera interbloqueada
6. Cuando se requiere trabajar en conjunto con elementos visuales con mayor eficiencia aunque a expensas de la complejidad del código se recomienda utilizar este Timer
System.Windows.Forms.Timer
**System.Timers.Timer
System.Timers.ReverseClock
System.Threading.FastClock
System.Threading.Timer
7. Solo se debe utilizar _____________ si medienta el perfilado de código se ha determinado que el uso de __________ esta causando problemas de velocidad
SpinLock, SpinWait
**SpinLock, Monitor
Monitor, SpinLock
SpinLock, Mutex
Mutex, SpinLock
Espero haber ayudado en algo. Hasta la próxima oportunidad!
Twittear
Se puede cambiar el tamaño inicial de la pila (stack) de un Thread
ResponderEliminar**TRUE
FALSE
NO APLICA
La planificación de los threads esta relacionada directamente con la cantidad de lineas por segundo generadas por un programador
TRUE
FALSE
**NO APLICA
Un ThreadId del sistema operativo no tiene relación fija con un Thread administrado
**TRUE
FALSE
NO APLICA
________ es un primitiva de sincronización definida por el usuario que permite que varios subprocesos (denominados participantes) trabajar simultáneamente en un algoritmo en fases
Barrier
SpinLock
SpinWait
InterLocked
SemaphoreSlim
Un Thread del sistema opertivo puede estar asociado a 1 o N Threads administrados
**TRUE
FALSE
NO APLICA
________es un tipo de sincronización ligero que se puede utilizar en escenarios de bajo nivel para evitar los costosos cambios de contexto y las transiciones del kernel que se requieren para los eventos de kernel
**SpinWait
SpinWaitSlim
SpinLockSlim
SpinLock
WaitSpin
Admite semáforos con nombre
**a. Semaphore
b. SemaphoreSlim
c. a y b
d. Ninguno de los anteriores
De estos métodos es el único que no tiene afinidad entre threads, por lo cual un thread puede adquirir un recurso, pero otro thread es el que fuerza su liberación
Semaphore
ReaderWriterLockSlim
WaitHandle
Monitor
Mutex
Las siguiente funcionalidades estan marcadas como obsoletas
Thread.GetNamedDataSlot
**Thread.Suspend
Thread.Dispose
**Thread.Resume
**Thread.SetCompressedStack
El tejido como producto textil es el resultado de tejer hilos (threads) y filamentos (Fibers)
TRUE
**FALSE
No aplica
Hola Victor Contreras, gracias por la visita y el aporte de tus conocimientos!!
EliminarEstoy seguro que muchos compartirán mi sensación muy grata, por saber que dedicaste algo de tu tiempo para compartir nueva información.
Éxitos!! Hasta cualquier momento!!
ESTA MAL LA RESPUESTA
EliminarHola Anónimo, gracias por la visita y el aporte de tu comentario!
Eliminar¿De qué pregunta?
Los mejores deseos! Hasta cualquier momento!
La instrucción lock (C#) o la instruccioón SyncLock Me (VB) son otra manera de hacer uso de la clase
ResponderEliminarInterlocked
(NO) ThreadLock
WaitHandle
Semaphore
Monitor
El modelo asincrónico basado en eventos es un conjunto de
a. APIS
b. Interfaces
c. Buenas Prácticas
(NO) d. a y c
e. b y c
Existen en el Framework
** ReaderWriterLockSlim
** ReaderWriterLock
ReaderWriterSlimLock
ReaderSlimWriterLock
ReaderAnyWriterOnlyLock
La instrucción de la API de Windows ExitThread equivale a este método del .Net Framework
Thread.ForceExit
** Ningún equivalente
Thread.Abort
Thread.Suspend
Thread.Close
Hola Juan Pablo Strelczuk, gracias por la visita y el aporte de tus conocimientos.
EliminarEs grato saber que tomaste algo de tu tiempo para compartir nuevas preguntas.
Los mejores deseos!! Hasta cualquier momento!
La instrucción lock (C#) o la instruccioón SyncLock Me (VB) son otra manera de hacer uso de la clase
Eliminar(NO)Interlocked
Hola Anónimo, gracias por la visita y el aporte de tus conocimientos.
EliminarÉxitos!! Hasta cualquier instante!
WaitHandle es una clase abstracta, algunas de las clases que heredan de ella son:
ResponderEliminarMutex
EventWaitHandle
AutoResetEvent
ManualResetEvent
ManagedWaitHandle
En .Net Framework ___ y _____ proporcionan una API que reduce parte de la complejidad y los riesgos que entraña la programación multiproceso.
**TPL
TLP
TCL
**PLINQ
LINQP
Para sincronizar las actividades de varios threads no se recomienda utilizar
ResponderEliminarThread.Suspend
Mutex
ManualResetEvent
Thread.Resume
Monitor
AutoResetEvent
Hola GDV 2014, gracias por la visita y el aporte de una nueva pregunta.
EliminarÉxitos!! Hasta cualquier instante!
Para sincronizar las actividades de varios threads no se recomienda utilizar
ResponderEliminarThread.Suspend
Mutex
** ManualResetEvent
Thread.Resume
Monitor
AutoResetEvent
Hola Luis Hermogenes Ochoa Buitrago, gracias por la visita y el aporte de tus conocimientos.
EliminarLos mejores deseos!! Hasta cualquier momento!
Esta respuesta es errónea.
EliminarHola Anónimo, gracias por la visita y el aporte de tu comentario.
EliminarEspero que los demás visitantes apoyen tu propuesta!
Éxitos!! Hasta cualquier instante!!
Es una clase utilitaria util para evitar condiciones de carrera
ResponderEliminarAtomicLocked
*Interlocked
LockedMath
Intercorelocked
Overlocked
Del contenido relacionado con la clase Mutex se puede establecer
**Mutex es más pesado que Monitor pero permite establecer control de acceso a recursos más allá del proceso local
Mutex es obsoleto, en su lugar siempre se debe hacer uso de Monitor
Mutex y Monitor son lo mismo solo que uno hace uso de APIS en Modo Kernel y otro en Modo Usuario
Mutex y Monitor no son lo mismo por que uno hace uso de APIS en Modo Kernel y otro en Modo Usuario
Monitor es más pesado que Mutex pero permite establecer control de acceso a recursos más allá del proceso local
Para evitar interbloqueos cuando se usa Barrier se debe hacer uso de ________________ a fin de especificar un tiempo de espera y token de cancelación
BarrierPostPhaseException
**SignalAndWait
AddParticipant
RemoveParticipant
ContinueWhenAll
La planificación de los threads puede variar de un sistema operativo a otro
**TRUE
FALSE
NO APLICA
Hola Anónimo, gracias por la visita y el aporte de tus conocimientos.
EliminarLos mejores deseos! Hasta cualquier momento!
Un Thread administrado puede estar asociado a 1 o N Threads del sistema operativo
ResponderEliminarTRUE
FALSE
NO APLICA
La clase _______________ habilita a varios subprocesos para leer un recurso de forma simultánea, aunque para escribir en el recurso, el subproceso debe esperar a un bloqueo exclusivo.
"
Interlocked
Mutex
Monitor
ReaderWriterLockSlim
ReaderAndWriterLockSlim
Se puede cambiar el tamaño inicial de la pila (stack) de un Thread
TRUE
FALSE
NO APLICA
Hola Andres Florez, gracias por la visita y el aporte de nuevas preguntas.
EliminarÉxitos!! Hasta cualquier instante!!
Usar llamandas sincronas para optimizar el desempeño:
ResponderEliminarSe deben evitar siempre
Se deben usar siempre
Solo deben usarse cuando realmente se requiera
Solo deben usarse cuando se disponga de múltiples CPU
Solo deben usarse cuando se disponga de múltiples Cores x CPU
Hola Andres Florez, gracias por la visita y el aporte de una nueva pregunta!.
EliminarLos mejores deseos! Hasta cualquier momento!
WaitForSingleObject, de la API de Windows, equivale a este método del .Net Framework
ResponderEliminarTreadPool.WaitForSingleThread
*** Thread.Join
Thread.WaitForSingleObject
ThreadPool.JoinThreadObject
Thread.Wait
"La clase _______________ habilita a varios subprocesos para leer un recurso de forma simultánea, aunque para escribir en el recurso, el subproceso debe esperar a un bloqueo exclusivo.
"
Interlocked
Mutex
Monitor
*** ReaderWriterLockSlim
ReaderAndWriterLockSlim
Usar llamandas sincronas para optimizar el desempeño:
Se deben evitar siempre
Se deben usar siempre
**** Solo deben usarse cuando realmente se requiera
Solo deben usarse cuando se disponga de múltiples CPU
Solo deben usarse cuando se disponga de múltiples Cores x CPU
Son delegados usados para la inicialización de threads
**** ThreadStart
UnParameterizedThreadStart
StartThreadObject
StartParametrizedThreadObject
**** ParameterizedThreadStart
Hola Andres Florez, gracias por la visita y el aporte de tus conocimientos!.
EliminarGenial aporte! Es agradable saber que tomaste algo de tu tiempo para compartirlo con los visitantes!
Éxitos!! Hasta cualquier instante!!
La diferencia entre ReaderWriterLockSlim y ReaderWriterLock
ResponderEliminarA.ReaderWriterLock es obsoleta y fue reemplazada por ReaderWriterLockSlim
**B.La primera tiene reglas simplificadas para la recursividad y para actualizar y degradar el estado del bloqueo, la segunda tiene funcionalidades similares pero no esta tan optimizada
C.ReaderWriterLockSim es obsoleta y fue reemplazada por ReaderWriterLock
D.La primera es para mini Framework la segunda para Framework normal
E.No hay diferencia se conservan ambas por temas de compatibilidad.
Hola Rangers Jair, gracias por la visita y el aporte de tus conocimientos!
EliminarLos mejores deseos! Hasta cualquier momento!
3. Una condición de carrera es un error que se produce cuando
ResponderEliminarRTA: el resultado de un programa depende del primero de dos o más threads que consiga llegar hasta una frecuencia específica del procesador
Hola JRojas, gracias por la visita y el aporte de tus conocimientos!.
EliminarÉxitos!! Hasta cualquier instante!!
4. Es conveniente utilizar este Timer cuando se deben modificar objetos de UI ya que se ejecuta en el mismo thread
ResponderEliminarRTA: System.Windows.Forms.Timer
Hola JRojas, gracias por la visita y el aporte de tus conocimientos!
EliminarLos mejores deseos! Hasta cualquier momento!
2. Para sincronizar las actividades de varios threads no se recomienda utilizar
ResponderEliminarRTA: Thread.Suspend
Thread.Resume
Hola JRojas, gracias por la visita y el aporte de tus conocimientos!.
EliminarÉxitos!! Hasta cualquier instante!!
2. Condición de carrera interbloqueada
ResponderEliminarA. Thread.Start
B. Thread.Sleep
C. Thread.Abort **
D. Thread.Close
E. Thread.Dispose
Hola Gilber Gabriel Guerrero Rodriguez, gracias por la visita y el aporte de tus conocimientos!
EliminarLos mejores deseos! Hasta cualquier momento!
3. Se puede optimizar el ThreadPool de ASP.NET para reducir la contención genreada por la exesiva creación de hilos?
ResponderEliminarA. TRUE **
B. NO APLICA
C. FALSE
Hola Gilber Gabriel Guerrero Rodriguez, gracias por la visita y el aporte de tus conocimientos!.
EliminarÉxitos!! Hasta cualquier instante!!
Es recomendable evitar crear Threads por demanda (por request) y Favorecer el uso de Threads desde el ThreadPool
ResponderEliminarA. False
B. True **
Hola Gilber Gabriel Guerrero Rodriguez, gracias por la visita y el aporte de tus conocimientos!
EliminarLos mejores deseos! Hasta cualquier momento!
7. Un Thread administrado puede estar asociado a 1 o N Threads del sistema operativo
ResponderEliminarA. FALSE
B. TRUE **
Hola Gilber Gabriel Guerrero Rodriguez, gracias por la visita y el aporte de tus conocimientos!.
EliminarÉxitos!! Hasta cualquier instante!!
La planificación de threads en el .net Framework es realizada por
ResponderEliminarA. El sistema operativo **
B. El programador
C. El servicio svhost.exe
D. El CLR
E. El driver msvcsMulticore.dll
Hola Gilber Gabriel Guerrero Rodriguez, gracias por la visita y el aporte de tus conocimientos!
EliminarLos mejores deseos! Hasta cualquier momento!
El modelo asincrónico basado en eventos es un conjunto de
ResponderEliminarA. Interfaces
B. a y c
C. Buenas Prácticas xxxxxxxxxxxxxxx
D. APIS
E. b y c
Hola Vanessa Flores, gracias por la visita y confirmar la pregunta!.
EliminarÉxitos!! Hasta cualquier instante!!
5.
ResponderEliminarRecomendado para tiempos de espera muy cortos
A. SemaphoreSlim
B. a y b
C. Semaphore*****
D. Ninguno de los anteriores
Hola Anónimo, gracias por la visita y compartir una nueva pregunta!
EliminarSaludos!
7.
ResponderEliminarDe los temporizadores existentes en el .Net Framework este no sige el modelo de eventos
A. System.Timers.ReverseClock
B. System.Windows.Forms.Timer
C. System.Threading.FastClock
**D. System.Threading.Timer
E. System.Timers.Timer
Hola Marquez06, gracias por la visita y compartir una nueva pregunta!
EliminarEs grato saber que tomaste algo de tu tiempo para poder compartir tus conocimientos!
Saludos!
ResponderEliminar5.
Un Thread administrado puede estar asociado a 1 o N Threads del sistema operativo
A. FALSE
**B. TRUE
C. NO APLICA
Hola Marquez06, gracias por la visita y confirmar la respuesta de la pregunta!
EliminarSaludos!