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
mt5 mac mt5 mac .
mt5 mac download mt5 mac download .
metatrader 5 download mac http://metatrader-5-downloads.com .
документы для оценки ущерба после залива http://www.ekspertiza-zaliva-kvartiry-2.ru/ .
как доказать виновника залива http://ekspertiza-zaliva-kvartiry-2.ru .
metatrader 5 metatrader 5 .
техническая экспертиза причин затопления https://ekspertiza-zaliva-kvartiry-3.ru/ .
download mt5 for mac http://metatrader-5-downloads.com/ .
рулонные шторы с электроприводом на пластиковые окна http://avtomaticheskie-rulonnye-shtory11.ru/ .
metatrader5 download http://www.metatrader-5-mac.com/ .
mt5 mac download http://www.metatrader-5-mac.com/ .
metatrader 5 metatrader 5 .
экспертиза залива квартиры экспертиза залива квартиры .
оценка техники после затопления http://www.ekspertiza-zaliva-kvartiry-2.ru .
mt5 download mac https://www.metatrader-5-sync.com .
metatrader 5 mac download metatrader-5-sync.com .
рулонная штора автоматическая [url=www.rulonnye-zhalyuzi-avtomaticheskie.ru]www.rulonnye-zhalyuzi-avtomaticheskie.ru[/url] .
техническая экспертиза причин затопления https://ekspertiza-zaliva-kvartiry-1.ru .
автоматические рулонные шторы с электроприводом http://avtomaticheskie-rulonnye-shtory11.ru/ .
рулонные шторы это https://avtomaticheskie-rulonnye-shtory11.ru .
mt5 mac download metatrader-5-mac.com .
mt5 download mt5 download .
download metatrader 5 http://www.metatrader-5-sync.com .
залив квартиры судебная экспертиза http://www.ekspertiza-zaliva-kvartiry-3.ru/ .
установить рулонные шторы цена rulonnye-zhalyuzi-avtomaticheskie.ru .
рулонные электрошторы http://www.rulonnye-zhalyuzi-avtomaticheskie.ru/ .
экспертиза протечки квартиры экспертиза протечки квартиры .
рулонные жалюзи купить в москве [url=www.rulonnye-zhalyuzi-avtomaticheskie.ru]рулонные жалюзи купить в москве[/url] .
экспертиза протечки квартиры экспертиза протечки квартиры .
оценка ущерба от залива квартиры оценка ущерба от залива квартиры .
mt5 mac download http://metatrader-5-platform.com .
metatrader5 metatrader5 .
download mt5 for mac https://www.metatrader-5-mac.com .
филлер ру филлер ру .
Плиты Армстронг https://potolok-armstrong1.ru/ .
электрические карнизы купить http://www.elektrokarnizmoskva.ru .
курсовая работа купить москва https://www.kupit-kursovuyu-1.ru .
написать курсовую на заказ http://www.kupit-kursovuyu-1.ru/ .
независимая экспертиза после залива независимая экспертиза после залива .
как доказать виновника залива https://www.ekspertiza-zaliva-kvartiry-5.ru .
купить курсовую сайт купить курсовую сайт .
курсовая заказать недорого http://www.kupit-kursovuyu-2.ru/ .
где можно заказать курсовую работу https://kupit-kursovuyu-6.ru/ .
покупка курсовых работ https://kupit-kursovuyu-3.ru/ .
seo marketing agency https://reiting-seo-kompanii.ru .
курсовая работа купить москва http://www.kupit-kursovuyu-8.ru .
сайт для заказа курсовых работ https://kupit-kursovuyu-8.ru .
куплю курсовую работу http://kupit-kursovuyu-1.ru/ .
курсовой проект купить цена https://kupit-kursovuyu-1.ru .
решение курсовых работ на заказ kupit-kursovuyu-7.ru .