Errata en el enunciado de la tarea 6 sobre spinlocks

Luis Mateu B. 6 Jun6 de Junio a las 17:22 hrs.2024-06-06 17:22:06

Errata

Hice este cambio en la metodología:

Decía:
Use una variable global para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado. Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.

Ahora dice:
Use una variable local VL para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado.  Además use un puntero global que guarde la dirección de VL, para que el próximo vendedor o el comprador pueda cambiar el estado de VL.  Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.

Es difícil resolver el problema con un estado global, porque cuando un thread A vende a un precio más barato que el thread B, A debe colocar esa variable global como en espera, pero al mismo tiempo tiene que colocarla en rechazado para avisarle a B que fracasó su venta.  El problema no se presenta con una variable local, porque A y B tendrán estados independientes.
Categoría Información
Última Modificación 6 Jun6 de Junio a las 17:22 hrs.2024-06-06 17:22:06
Vistas Únicas 43
Compartir
Comentarios