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
??PORN?? ??PORN?? .
ремонт гидроизоляции фундаментов и стен подвалов https://gidroizolyacziya-podvala-iznutri-czena1.ru/ .
стоимость гидроизоляции подвала https://www.gidroizolyacziya-podvala-iznutri-czena1.ru .
курсовые работы заказать курсовые работы заказать .
помощь студентам контрольные помощь студентам контрольные .
купить курсовую сайт купить курсовую сайт .
покупка курсовой покупка курсовой .
написание курсовой на заказ цена написание курсовой на заказ цена .
написать курсовую работу на заказ в москве https://www.kupit-kursovuyu-29.ru .
написание учебных работ написание учебных работ .
заказ курсовых работ заказ курсовых работ .
написание курсовой работы на заказ цена http://www.kupit-kursovuyu-28.ru .
купить курсовую сайт купить курсовую сайт .
курсовые под заказ [url=https://kupit-kursovuyu-22.ru/]https://kupit-kursovuyu-22.ru/[/url] .
цена ремонта подвала http://www.gidroizolyacziya-podvala-iznutri-czena1.ru .
гидроизоляция подвала снаружи цены гидроизоляция подвала снаружи цены .
дайсон официальный сайт стайлер fen-d-2.ru .
купить дайсон стайлер с насадками для волос официальный сайт цена http://fen-d-1.ru .
дайсон стайлер для волос цена с насадками купить официальный сайт https://fen-d-1.ru .
официальный сайт дайсон фен https://fen-d-1.ru .
пин ап активация бонуса https://pinup5010.ru
пин ап техподдержка пин ап техподдержка
пин ап проверить баланс https://pinup5010.ru
пин ап стратегия авиатор pinup5009.ru
пин ап приложение не работает пин ап приложение не работает
pin up yordam markazi pin up yordam markazi
pin up mobil kirish https://www.pinup5009.ru
пин ап apk скачать https://pinup5010.ru
пин ап пополнение через карту http://pinup5010.ru
pin up humo orqali pul o‘tkazish http://www.pinup5011.ru
пин ап блокировка аккаунта https://pinup5011.ru/
пин ап способы оплаты https://pinup5012.ru
пин ап загрузка на айфон https://pinup5012.ru/
пин ап активация бонуса https://pinup5013.ru/
пин ап https://pinup5013.ru
pin up slot o‘yinlari https://pinup5013.ru
pin up hisobni bloklash https://www.pinup5014.ru
pin up foydalanuvchi fikrlari http://www.pinup5014.ru
пин ап новый промокод http://www.pinup5014.ru
pin up bonus aktivatsiya pinup5014.ru
1 win.com.ci 1 win.com.ci
1win xyz почта вход https://1win5522.ru/
1win ставки на спорт россия 1win ставки на спорт россия
1win kod orqali ro‘yxatdan o‘tish http://1win5511.ru/
pin up promo bilan bonus olish http://pinup5015.ru
pin up shikoyatlar uz pin up shikoyatlar uz
1win uz kazino http://1win5511.ru
пин ап восстановить пароль http://pinup5015.ru
1win demo rejim http://1win5512.ru/
1вин android приложение 1вин android приложение