You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mi duda no se trata de un tema administrativo o personal, ya que en ese caso debo contactar a mi profe, al Jefe de Bienestar o al correo del curso (iic2233@ing.puc.cl).
Utilizaré un título descriptivo y llenaré correctamente esta plantilla.
De ser necesario, colocaré código simple que permita explicar mi problema o duda.
Duda
Tengo una duda respecto a cuando esperamos a que un cierto evento ocurra. Si bien sé que es con el método wait(), ¿Cómo se cuando debo ocupar clear() o no?. Esto debido a que a veces se nos pide explícitamente que ocupemos ese método, entonces ahí no hay ninguna duda de que hay que utilizarlo, pero en el caso que nos digan que tenemos que esperar ese evento y no nos dicen nada respecto a clear(), ¿Cómo saber si debo usar el clear() o no una vez llegó la señal?. De antemano gracias, saludos.
The text was updated successfully, but these errors were encountered:
Hola @panchouc ! clear() se usa para resetear un Event después de la llamada a set(). Generamente se utiliza cuando se quiere usar el mismo Event varias veces, o en otras palabras cuando el evento ocurre varias veces.
Por ejemplo, imagina que tienes un evento e y un thread llamó a e.wait(). Ahora este thread queda pausado esperando a que el Event active la señal correspondiente. Luego, si algún otro thread llama a e.set() la flag interna del Event cambia a True y el thread que estaba esperando (junto con cualquier otro que haya llamado a e.wait()) deja de esperar y continua con su ejecución. A partir de este momento si otro thread llama a e.wait() este no esperará nada y se continuará ejecutando porque el Event "ya se activó". Para evitar esto y que el event se pueda volver a usar, es necesario resetear la flag interna del event a False usando e.clear(), asi el Event queda en su estado original. Esto también está explicado más detalladamente en los contenidos de la semana 5.
Espero que te haya quedado más claro. Quedo atento por si quedan dudas.
Prerrequisitos
(Marcar colocando una X entre los corchetes los ítems que ya hiciste, así: "[X]")
Duda
Tengo una duda respecto a cuando esperamos a que un cierto evento ocurra. Si bien sé que es con el método
wait()
, ¿Cómo se cuando debo ocuparclear()
o no?. Esto debido a que a veces se nos pide explícitamente que ocupemos ese método, entonces ahí no hay ninguna duda de que hay que utilizarlo, pero en el caso que nos digan que tenemos que esperar ese evento y no nos dicen nada respecto aclear()
, ¿Cómo saber si debo usar elclear()
o no una vez llegó la señal?. De antemano gracias, saludos.The text was updated successfully, but these errors were encountered: