Trabalho 3 – EPOS
System Object Destruction
No exercício três deviamos implementar o controle de destrução de objetos, o qual não deve corromper o sistema e também deve estar de acordo com a semântica da linguagem de programação.
A implementação adotada funciona da seguinte maneira: na class Thread foi adicionado um campo _container, nele é guardada a fila em que a Thread se encontra no momento. Os métodos desta classe foram alterados para que a consistência do campo _container seja mantida. No método join, por exemplo, o campo _container é atualizado com o endereço da fila _waiting_for_me do objeto em que se da join.
Quando uma thread entra para o estado RUNNING o seu campo container não é atualizado, já que caso o mesmo seja deletado (ou auto-deletado), ele tentará se remover de uma fila em que não está, não causando mais problemas.
Quando uma thread que possui elementos na sua fila _waiting_for_me é deletada, ela não acorda aquelas que a estão esperando, entrando em uma situação de deadlock. Nosso sistema, por conseguir detectar essa situação facilmente, gera um aviso. Porém, caso a Thread que tente se dar join já tiver sido destruída e removida da memória, a thread em execução trava, como nosso sistema não consegue detectar esse erro ele não é informado.
Quando um objeto que extende a classe Synchronizer é deletado, seu destrutor chama wakeup_all, fazendo com que todos as threads que estiverem travadas nele continuem a execução.
Arquivos Modificados:
Thread.h
Thread.cc
Sycronizer.h
нарколог капельницу на дому https://kapelnicza-ot-pokhmelya-samara-39.ru
бизнес подарки купить http://suvenirnaya-produkcziya-s-logotipom-8.ru
premium sedan car rental luxury-car-rental-miami-1.com
melbet скачать melbet скачать
капельница от запоя клиника https://kapelnicza-ot-pokhmelya-samara-39.ru
В этой статье мы подробно рассматриваем проверенные методы борьбы с зависимостями, включая психотерапию, медикаментозное лечение и поддержку со стороны общества. Мы акцентируем внимание на важности комплексного подхода и возможности успешного восстановления для людей, столкнувшихся с этой проблемой.
Прочесть заключение эксперта – clinica plus в твери
cool комбинезон https://detskie-kombinezony-kupit.ru
капельница от алкоголя на дому капельница от алкоголя на дому
комбинезон шорты детский detskie-kombinezony-kupit.ru
выезд на дом капельница от запоя выезд на дом капельница от запоя
наркология вывод из запоя в стационаре спб наркология вывод из запоя в стационаре спб
нейросеть для презентаций https://www.litteraesvfu.ru
создать презентацию нейросеть http://litteraesvfu.ru
сувенирная продукция и подарки с логотипом http://suvenirnaya-produkcziya-s-logotipom-8.ru
Эта информационная публикация освещает широкий спектр тем из мира медицины. Мы предлагаем читателям ясные и понятные объяснения современных заболеваний, методов профилактики и лечения. Информация будет полезна как пациентам, так и медицинским работникам, желающим поддержать уровень своих знаний.
Дополнительно читайте здесь – прокапаться от алкоголя цена
вывод из запоя в самаре https://kapelnicza-ot-pokhmelya-samara-38.ru
капельница на дому самара https://kapelnicza-ot-pokhmelya-samara-38.ru